1、单例引起的内存泄漏。,由于单例的静态特性使其生命周期与应用的生命周期相同较长,因此如果一个对象不再需要使用,单例对象如果有该对象的引用,则该对象不能正常回收,存储器泄漏。解决方…
内存泄漏场景长生命周期的对象持有短生命周期对象的引用就很可能发生内存泄漏,尽管短生命周期对象已经不再需要,但是因为长生命周期持有它的引用而导致不能被回收,这就是Java中内存泄漏的…
区别1、在类中的位置成员变量:类中,方法外2、在内存中的位置成员变量:堆局部变量:栈3、初始化的值成员变量:有默认值局部变量:没有默认值,只有定义,赋值,才能使用生命周期成员变量:…
1、类的静态代码块、结构代码块、结构方法的执行流程静态码块>结构码块=显示初始化(看顺序)>结构方法。2、静态内容随类加载而加载。静态码块内容优先执行。3、子类初始化前进行父类初始…
1、优点提高了代码的再利用性。提高了代码的维护性。让类与类有关,是多态的前提。2、缺点提高类的耦合性。这样一个类的变化会影响其他与此类相关的类别。原则:低耦合,高内聚合。耦合:类与…
说明1、成员变量,编译看左边,运行看左边2、构造方法,子类的构造都会默认访问父类构造3、成员方法,编译看左边,运行看右边4、静态方法,编译看左边,运行看左边实例package da…
PriorityBlockingQueue在java中的原理