构造器的概述
构造器也称构造方法,用来创建对象,给对象中的成员进行初始化。
构造器格式
public 类名(){
}
构造器的注意事项
1:若我们没有提供构造方法,系统会自动提供一个无参构造方法。
2:若我们提供了有参构造方法,系统就不再提供它的无参构造方法。
3:若我们还要使用系统的无参构造方法,我们就必须自己给出。
4:构造方法也可以给成员变量赋值
对象的创建过程
Student s = new Student();
(1):加载Student.class文件进内存
(2):在栈内存为s开辟空间
(3):在堆内存为学生对象开辟空间
(4):对学生对象的成员变量进行默认初始化
(5):对学生对象的成员变量进行显示初始化
(6):通过构造方法对学生对象的成员变量赋值
(7):学生对象初始化完毕,把对象地址赋值给s变量
static关键字
static 静态的
特点:
1:随着类的加载而加载
2:静态比对象先存在
3:被类的所有对象共享
4:可以用类名调用,也可以用对象名调用。推荐用类名调用
5:静态只能调用静态,非静态可以调用静态和非静态(因为静态先有)
6:不能用this关键字
带有static的内存图
静态变量和成员变量
1:静态变量属于类,也称类变量,存储在堆中。
静态变量随着类的加载而加载。
2:成员变量是属于对象,也称实例变量(对象变量),存储在堆中。
成员变量随着对象的创建而存在。