当java在创建一个对象的时候都做了什么??
1. 将.class文件加载到内存(只有第一次创建对象时加载一次)
2.在栈中创建一块空间,起个名字
3. 在堆中开辟一块空间
4.给成员变量进行默认的初始化(int:0 ,引用类型默认值是null)
5:显示初始化(成员变量)
6. 将对象的引用交给变量
构造方法和普通方法的区别
1.调用方式不同
普通方法的调用:1:先要创建一个对象,2:通过对象.方法名(实际参数)
构造方法的调用:构造方法只能通过new 关键字进行调用
2:
普通方法必须要有返回值,如果不想return,返回类型是:void
构造方法一定没有返回值
3:构造方法的名字一定是和类名相同,包括大小写
构造方法也可以重载 ,如果一个类中没有显示的声明一个构造方法,java会给我们提供一个默认的参数为空的构造方法,
如果在类中显示的声明了一个构造方法,java将不再给我们提供默认的构造方法
static
用static修饰的变量称为静态变量,用static修饰的方法称为静态方法,这些变量和方法是在.class文件加载时进行创建的。
它比对象创建的时间早,所以在静态方法中不能使用非静态的成员变量,如果想要使用的话,要先创该类的对象