内部类初始化
来源:互联网 发布:贪心算法会场安排问题 编辑:程序博客网 时间:2024/06/10 05:45
单例模式中常用的一种饿汉模式实现是用内部类实现的,但是并不理解为什么是饿汉,不是懒汉呢,于是写了下面的测试程序,得到结果:并不是InnerClass外部类初始化,其内部类JobSchedulerHolder就初始化。
public class InnerClass{ private static class JobSchedulerHolder{ private static InnerClass instance = new InnerClass(); static{ System.out.println("内部类初始化"); } } private InnerClass(){ } static{ System.out.println("外部类初始化"); } public static InnerClass getInstance(){ return JobSchedulerHolder.instance; } public static void main(String[] args){ InnerClass i = new InnerClass(); System.out.println("------------");// InnerClass.getInstance(); }}
执行结果
外部类初始化------------
public class InnerClass{ private static class JobSchedulerHolder{ private static InnerClass instance = new InnerClass(); static{ System.out.println("内部类初始化"); } } private InnerClass(){ } static{ System.out.println("外部类初始化"); } public static InnerClass getInstance(){ return JobSchedulerHolder.instance; } public static void main(String[] args){// InnerClass i = new InnerClass();// System.out.println("------------"); InnerClass.getInstance(); }}
执行结果
外部类初始化内部类初始化
0 0
- 内部类初始化
- java内部类的初始化
- 匿名内部类 初始化块
- 用内部类初始化 对象
- 匿名内部类的初始化
- java内部类的初始化
- 匿名内部类的初始化
- 内部类、匿名内部类和对象的初始化过程
- 内部类的继承和初始化顺序
- java 利用内部类进行特别初始化
- 关于Java内部类的初始化
- 使用匿名内部类初始化集合类
- 初始化匿名内部类的参数必须为final类型
- 【重点】内部类初始化以及访问外部类变量
- Java 虚拟机内部类静态字段的初始化与访问
- 细说匿名内部类方式创建线程、初始化HashMap
- 类的高级概念、staatic、初始化块、内部类
- Java双括号初始化——匿名内部类
- R语言常见的问题?
- leetcode 561
- 中科爱讯推出LoRa系列产品:网关传输距离达20公里
- 应用开发
- java生成压缩文件
- 内部类初始化
- 安卓设计模式(一)面向对象六大设计原则
- java程序猿的成长记录之(三)分享一种防猜的加密算法
- Centos7安装nginx
- 多渠道打包,调试程序(debug app)
- Qt的5种常用布局搭建
- 谈谈canvas的性能优化(主要讲缓存问题)
- synchronized的初级使用
- linux系统IO分析心得