- 博客(3)
- 资源 (4)
- 收藏
- 关注
原创 Java杂谈3——类加载机制与初始化顺序
Java语言的哲学:一切都是对象。对于Java虚拟机而言,一个普通的Java类同样是一个对象,那如果是对象,必然有它的初始化过程。一个类在JVM中被实例化成一个对象,需要经历三个过程:加载、链接和初始化。 JAVA类的加载 加载:从字节码二进制文件——.class文件将类加载到内存,从而达到类的从硬盘上到内存上的一个迁移,所有的程序必须加载到内存才能工作。一个Java类在被加载到内
2017-02-24 17:15:48 777
原创 关于java内部类加载顺序的问题
今天看了单例模式,对内部类的加载顺序产生了疑问。所以来请教大家。 我们知道,java当中,类的加载顺序是:类静态块-类静态属性-类内部属性-类构造方法。 但是当有内部类的时候会怎样呢?我们先看一下代码。 public class Singleton { public static class Inner{ static { System.ou
2017-02-24 16:45:53 2397
原创 使用静态内部类实现延迟加载单例模式
所谓单例模式,简单来说,就是在整个应用中保证只有一个类的实例存在。就像是Java Web中的application,也就是提供了一个全局变量。单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。这个类就称为单例类。 单例的创建一般分为懒汉式,恶汉式,双重锁检查,枚举等,其中双重锁检查只能在jdk1.5以后才能有效,1.5以前在java对象模型中的无序写问题不能保证。
2017-02-24 16:26:53 10590
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人