JVM的垃圾收集(GC)原理
https://blog.csdn.net/strawqqhat/article/details/83627594
设计模式
https://blog.csdn.net/strawqqhat/article/details/84680240
static特点
1,随着类的加载。静态会随着类的消失而消失。说明他的周期最长
2,优先于对象的存在,静态是先存在,对象后存在
3,被所有对象所共享
4,可以直接被类名所调用
实例变量和类变量区别:
1,存放位置。
类变量随着类的加载而存在于方法区中。
实例变量随着对象的建立而存在于堆内存中。
2,生命周期:
类变量生命周期最长,随着类的消失而消失
实例变量生命周期随着对象的消失而消失。
主函数是固定格式的:jvm识别
jvm在调用主函数时,传入的是new String[0];
静态代码块加载后只执行一次,且优先于主函数执行。
构造新对象后所做的事情:
java23种设计模式之一:
单例设计模式:解决了一个类再内存中只存在一个对象
想要保证对象唯一。
1,为了避免其他程序过多建立该类对象,先禁止其他程序建立该类对象
2,为了让其他程序可以访问到该类对象,只好在本类中,自定义一个对象。
3,为了方便其他程序对自定义对象的访问,可以对外提供一些访问方式。
具体代码中体现为:
1,将构造函数私有化
2,在类中创建一个本类对象
3,提供一个方法可以获取到该对象
抽象类特点:
1,抽象方法一定在抽象类中
2,抽象方法和抽象类必须用abstract标识
3,抽象类不能用new创建对象,因为调用抽象方法没意义
4,抽象类中的方法要被使用,必须由子类复写起所有的抽象方法后,建立子类对象调用。
如果子类只覆盖了部分抽象方法,那么该子类还是一个抽象类。