??xml version="1.0" encoding="utf-8" standalone="yes"?> 二、记住以下两点:(重点) 2、在使用this调用构造方法时候至有一个构造方法是没有使用this()调用的,而此构造方法将做ؓ调用的出口,一般这个出口都会用无参构造完成?/p>
三、this有一个最重要的概?---当前对象Q当前正在调用类中方法的对象Q叫做当前对象?/strong> 成功的关键: 成功的必备的两大条gQ?br />
W一、拥有良好的态度Q占100%Q;
一、用static定义属性:
1、用static关键字声明的属性是全局属性?br />
2、静态属性和Ҏ可以在没有实例化对象的时候调用?br />
3、主Ҏ(mainҎ)也存在static关键字?br />
4、在写程序时Q主Ҏ(mainҎ)代码简单越?代码量越越?
5、主Ҏ的含义如下:
.publicQ表C最大的权限Q所有h都可以访问?br />
.staticQ因为执行的时候执行的是cdUͼ所以表C可以由cdU调用?br />
.voidQ因ZҎ是一切的LQ所以表C没有返回倹{?br />
.mainQ系l内建的Ҏ名称?br />
.String[] argsQ表C字W串数组Q用于接收参数?nbsp;
6、程序在内存划分如下Q?br />
1)、栈内存Q对象名Uͼ实际上是对象对堆的引用地址Q?br />
2)、堆内存Q属性;
3)、全局代码区:保存所有的操作ҎQ?br />
4)、全局数据区:保存所有的static属性;
二、用static字义ҎQ?br />
1、方法中加一个static关键字时Q便成静态方法?br />
2、在使用static关键字定义方法时Q应注意以下几点Q?br />
1)、static的方法只能调用static的属性或ҎQ不能调用非static的属性或Ҏ?br />
2)、静态属性和Ҏ在没有实例化对象的时候调用?br />
3)、而类中的普通方法和普通属性,肯定只有在对象实例化之后才能被调用?/p>
E序开发思\Q?/em>
1、完成基本功能;
2、改善功能,加入一些验证;
3、Ş成更好的l构Q加入一些类的设计;
4、主Ҏ中不能编写过多代码?/p>
]]>
1、this在java中表C出以下的概念:
1)、调用类中的属性:this.属?br />
2)、调用类中的ҎQthis.Ҏ()
3)、调用类中的构造方法:this()
4)、表C当前对象:this
1、所有的构造方法应该是对象操作前最早调用的Q所以用this调用构造方法的时候所有的代码必须攑֜构造方法的首行?/p>
]]>
1、线E的基本概念Q?strong>U程是一个程序里面不同的执行路径??strong>U程是一个程序内部的序控制?
2、main()Ҏ叫主U程(d?->一个分支就是一个线E??br />
3、进E:
q程是一个静态的概念?br />
4、在同一旉Q一个CPU只能支持一个线E在执行?br />
5、Java的线E是通过java.lang.ThreadcL实现的?br />
6、可以通过创徏一个Thread的实例来创徏新的U程?br />
7、可以通过ThreadcȝStart()Ҏ来启动线E?br />
二、创建线E的两种方式Q?br />
1、?span style="color: red">实现Runnable接口方式(能用接口时便用接口方?/span>Q?br />
2、?span style="color: red">l承Threadc?/span>方式Q?span style="background-color: yellow">l承方式是死?/span>Q?br />
sleep()Ҏ-->>Threadcȝ静态方?br />
3、线E的优先U是用数字表C,范围??0Q一个线E的~省优先U是5?br />
可用下q方法获得或讄U程对象的优先Q?br />
int getPriority();
void setPriority(int newPriority);
]]>
1?span style="color: #0000ff">foreach输出的语法如下:
for(int i Q数l名U?{
}
2、可变参敎ͼ
Q?Q、定义:正常情况下,一个方法在调用时必L的指定传入的参敎ͼ而且参数的个数必ȝ一Q但是在JDK1.5之后Q在声明Ҏ参数的时候加入了可变参数?br />
?/strong>Q?br />
public class Test {
public static void main(String[] args){
int[] temp={1,2,4,5,6}; // 声明一个数l?br />
print(); //无参?br />
print(1); //一个参?br />
print(1,2,3,4); //多个参数
print(temp); //传入数组作ؓ参数
}
public static void print(int ...y){ //y前面?#8220;.”W号只能?个,不能多,也不能少!
for(int x : y){ // foreach输出
System.out.print(x);
}
}
}
二、数l之间拷贝:
System.arraycopy(源数l名Uͼ下标Q目标数l名Uͼ下标Q拷贝的长度);
例:
public class Test2{
public static void main(String[] args){
int[] t1={1,2,3,4,5,6};
int[] t2={11,22,33,44,55,66};
System.arraycopy(t1,0,t2,3,3); //注意Q拷贝的长度不能大于Q目标数l总长?q里?) - 目标下标(q里?)Q的长度,否则会报数组下标溢出?br />
for(int i:t1){
System.out.print(i+" ");
}
}
}
输出的结果ؓQ?1 22 33 1 2 3
]]>
W一Q强烈的动机Q?br />
W二Q有坚定的信c?br />
W三Q他们相信成功者愿意做别h不愿意做的事、别Z敢做的事、别人做不到的事?/p>
W二、有一的技巧与能力Q占100%Q?/p>
1,抽象,装,l承,多态是面向对象E序设计中得四个特点.
2,面向对象的Y件开发大体分?面向对象的分?面向对象的设?面向对象的实?
可概括ؓ如下q程:分析用户需?从问题中抽取对象模型;l化模型,设计c?包括cȝ属性和c间?/p>
怺关系,同时观察是否有可以直接引用的已有cL部g;选定一U面向对象的~程语言,具体~码实现
上一阶段cȝ设计,q在开发过E中引入试,完善整个解决Ҏ.
3,面向对象E序设计Ҏ的优Ҏ:可重用?可扩展?可管理?
4,cȝ定义:class前的修饰W分问控制符和非讉K控制W两大类.讉K控制W包括public和private.
非访问控制符包括abstract(抽象),final(最l?.
5,finalcL最l类,是不能有子类的类.abstract和final不能同时修饰一个类,因ؓ抽象cLw没有具体对?
需要派生出子类后在创徏子类的对?而最l类不可能有子类.
6,创徏对象的格式ؓ: cd 对象?new 构造方?参数);注意前面是类名后面是构造方?
注意构造方法没有返回类?也不能写void,主要用于完成cd象的初始化工?一般不能直接由~程
直接调用,而是用newq算W来调用.
7,如果class前面由public修饰W?则默认构造方法的前面也应该有public修饰W?
8,cM有static修饰的域或方?可用cd或对象名讉K,否则只能用对象名讉K.
9,修饰域的讉K控制W可以是:public,private,protected,private protected.非访问控制符可以?
static,final,volatile(易失?
10,cd量的最本质的特Ҏ:他们是类的域,不属于Q何一个类的具体对象实?不是保存在某个对象实例的内存I间?而是保存在类的内存区域的公共存储单元?
11,局部变量是在方法体内声明的,只有当方法被调用时他们才存在,因而只能在本方法内使用,不存在访问控制符,也不能声明ؓ静态变?static),但可以声明ؓfinal变量.局部变量必d始化.
12,修饰Ҏ的访问控制符可以是:public,private,protected,private protected,修饰Ҏ的非讉K控制W可以是Qstatic,final,abstract,native(本地Ҏ),synchronized(同步Ҏ)?/p>
13,用static修饰的变量或Ҏ都ؓcL员,cL员可以用cd或实例名讉KQ实例成员只能用实例名来讉K?/p>
14,如果一个类中含有抽象方法,则此cdMؓ抽象c,如果抽象cȝ子类不ؓ抽象c,则子cdd现父cȝ所有抽象方法。抽象方法不能用静态方法和最l方法。抽x法只有函数头的声明,而用分号来替代方法体Q没有大括号。如abstract void abstractmethod();
15,this变量用在一个方法的内部Q指向当前对象,当前对象指的是调用当前正在执行的Ҏ的那个对象。super变量是直接指向父cȝ构造方法,用来引用父类U的变量和方法?׃他们指的是对象,所以不能通过它来引用cd量和cL?
16,如果要引用一个包中的多个c,可以用星h代替。用星号只能表C本层次的所有类Q而不包括子层ơ下的类。所以经帔R要用两条语句来引入两个层ơ的c:import java.awt.*;import java.awt.event.*;
17,讉K修饰W:
--cM限定为public的成员可以被所有的c访问?/p>
--cM先定位private的成员只能被q个cLw访问。同一个类的不同对象可以访问对方的private域变量或调用Ҏ的域ҎQ这是因问保护控制在cȝU别上,而不是对象的U别上?/p>
--cM限定为protected的成员可以被q个cLw,它的子类(包括同一个包中和不同包中的子c?Q以及同一个包中的其他c访问?/p>
--用private protected修饰的成员可以被该类本n讉KQ也可以被该cȝ所有子c访问?/p>
--默认讉K控制W规定只能被同一个包中的c访问和引用Q而不能被其他包的c访问。即他的讉K权限是friendly?/p>
18Q注意:
----abstract和private,static,final,native不能q列修饰同一个方法?/p>
----abstractcM不能有private修饰的域和方?/p>
----staticҎ不能处理非static的域?/p>
19Q重载方法的参数必须不同Q或者是参数个数不同Q或者是参数cd不同。重载的多个Ҏ必须q回相同的数据类型?/p>
20Q在java中,一个类获取某一接口定义的功能ƈ不是通过直接l承q个接口的属性和Ҏ来实现的。因为接口中的属性都是常量,接口的方法都是没有方法体的抽象方法,没有具体定义操作?/p>