1. 成员变量和局部变量:
成员变量:变量定义在方法外,类里
局部变量:变量定义在方法里
2. 就近原则:
当成员变量名与局部变量名一致时,若使用这个名字,使用的是离这个调用位置最近的变量(如果局部变量离的近就用局部变量,如果成员变量离得近,就用成员变量)。谁离我近,我就用谁。
3. this关键字:
变量加了this关键字(格式为:this.变量名),表示的是成员变量,用来区分成员变量和局部变量。
- sout (age); //程序会先去局部位置找age这个局部变量,如果有就直接用,如果没有再去成员变量位置找
- sout (this.age); //程序会直接使用成员变量age,不会去局部位置找age了。
4. 构造方法
构造方法也叫做构造器,构造函数。
- 作用:在创建对象的时候给成员变量进行赋值,即初始化成员变量的。(创建对象程序需要走很多步,而构造方法只是起一个给成员变量初始化的作用)
- 格式:
public class 类名 {
修饰符 类名(形参){
方法体;
}
} - 注意事项:
a. 方法名与类名相同,大小写也要一致
b. 没有返回值类型,连void都没有
c. 没有具体的返回值,不能写return,也不能由return带回结果数据
d. 任何类定义出来,默认就自带无参构造方法
e. 一旦定义了有参构造方法,或者无参构造方法,那么自带的无参构造方法就没有了
f. 建议在写代码时,无论用不用,都要手动写上无参和带全部参数的构造方法。
g. 形参可带,叫带参构造方法,可不带,叫无参构造方法。 - 执行时机:
创建对象的时候由虚拟机调用,不能手动调用构造方法,即不能单单写 Student ();
每创建一次对象,就会调用一次构造方法 - 构造方法的种类:
无参构造方法:初始化对象的时候,成员变量的值均采用默认值
有参构造方法:在初始化对象的时候,同时可以为对象进行赋值 - 构造方法的重载:
带参构造方法和无参构造方法,两者方法名相同,但形参不同,这叫做构造方法的重载。
5. 标准的Javabean类
- 类名需要见名知意
- 成员变量使用private修饰
- 提供至少两个构造方法
无参构造方法 和 带全部参数的构造方法 - 成员方法
提供每一个成员变量对应的setXxx();和getXxx();
如果还有其他行为方法,也需要写上 - 快捷生成javabean的方法:ptg插件,右键pig to Javabean,一键生成构造方法,setXxx()和getXxx()方法