创建对象的方式
有4种显示地创建对象的方式:
1、new语句创建对象
2、运用反射,调用java.lang.Class或者java.lang.reflect.Constructor的newInstance()方法
3、调用对象的clone()方法
4、运用反序列化手段,调用java.io.ObjectInputStream的readObject()方法
java虚拟机创建一个对象包含以下步骤:
1、给对象分配内存
2、将对象的实例变量自动初始化为其变量类型的默认值
3、初始化对象,给实例变量赋予正确的初始值
构造方法必须满足一下语法规则:
1、方法名必须与类名相同
2、不要声明返回类型
3、不能被static、final、synchronized、abstract、native修饰。构造方法不能被子类继承,所以用final和abstract修饰没有意义。构造方法用于初始化一个新建的对象,所以用static修饰没有意义。多个线程不会同时创建内存地址相同的一个对象,因此synchronized修饰没有必要。此外,java语言不支持native类型的构造方法