构造方法:
构造函数、构造器、构建器---------------复用给成员变量赋初始值代码
-
作用:给成员变量赋初始值
-
与类同名,没有返回值类型(连void都没有)
-
在创建(new)对象时被自动调用
-
若自己不写构造方法,则编译器默认提供一个无参构造方法,若自己写了,则不再默认提供
-
构造方法可以重载
//学生类
public class Student {
String name; //成员变量(整个类中)
int age;
String address;
//构造方法
Student(String name,int age,String address){ //局部变量(当前方法中)
this.name = name;
this.age = age;
this.address = address;
}
//方法
void study(){
System.out.println(name+"在学习...");
}
void sayHi(){
System.out.println("大家好,我叫"+name+",今年"+age+"岁了,家住"+address);
}
}
//构造方法的演示
public class ConsDemo {
public static void main(String[] args) {
//Student zs = new Student(); //编译错误,Student类没有无参构造方法
Student zs = new Student("zhangsan",25,"LF");
Student ls = new Student("lisi",24,"JMS");
zs.sayHi();
ls.sayHi();
}
}
this:
指代当前对象,哪个对象调用方法它指的就是哪个对象只能用在方法中,方法中访问成员变量之前默认有个this.
this的用法:
-
this.成员变量名----------------------访问成员变量
当成员变量和局部变量同名时,若想访问成员变量,则this不能省略
-
this.方法名()--------------------------调用方法(可以省略,没有什么情况下是不能省略)
-
this()------------------------------------调用构造方法(一般不用----了解
null:
表示空,没有指向任何对象。
若引用的值为null,则该引用不能进行任何点操作了,若操作则发生NullPointerException空
指针异常。