构造器,垃圾回收器相关

1、堆heap:对象生存空间,gc管理

2、栈stack:方法调用变量生存空间

3、实例变量:声明在类里,每个类的对象都有独立的该变量

4、局部变量:声明在方法体里面,声明周期只限于方法执行期间

5、非基本类型的变量是保存对象的引用,而不是对象本身。对象本身是放在堆上的。局部变量会放在栈上。

6、不管是实例变量还是局部变量,对象本身都在堆上

7、实例变量在初始化的时候才会给他分配堆内存

8、构造函数没有返回值,可以有与类同名的方法

9、自己写了有参构造函数,无参构造函数就不会自动生成了

10、重载构造函数:区别在于,参数的类型和顺序

11、自己的构造函数里面没加super(),编译器会自动加上一个无参数的super()

12、先执行父类的构造方法,后执行子类的构造方法,小孩不能先于父母出生

13、this()只能调用同一个类中的其它构造函数,只能用在构造函数中,必须是第一行语句,super和this不能同时用

14、注意区分,局部变量(方法里面的), 实例变量(类里面的),引用变量(对实例化的对象的引用)

15、只要引用还活着,对象就也活着:防止内存泄漏:不要持有引用,活着及时断开引用

16、没有引用的对象,会被gc收回。将引用设置为null,或者将引用指向其他对象,原来的对象就会被收回

17、Dog d = new Dog():d是引用,new Dog()是创建的对象,=号是将引用和对象联系起来

猜你喜欢

转载自blog.csdn.net/hpp_1225/article/details/88779097