java单例模式详解

来源:互联网 发布:mysql 分析函数 over 编辑:程序博客网 时间:2024/05/07 16:04
class Single{//你声明的是一个static属性,那么它就会在虚拟机加载这个类的时候就帮你实例化好,<span style="white-space:pre"></span>//以后不再执行了,这个single对象会在虚拟机运行时一直存在于内存之中,
<span style="white-space:pre"></span>//所以static single s = new single();<span style="white-space:pre"></span>//这句话只会被调用一次,所以自然就只有这一个对象啦private static Single s = new Single();//这个私有的构造函数就是为了防止别的类进行New操作
                //构造函数私有化,那么只能在类里调用,在外部无法访问这个构造函数private Single(){}
<span style="white-space:pre"></span>//Single类进内存,对象还没有存在,只有调用了getInstance方法时,才建立对象。public static Single getOne(){return s;}}class demo3{public static void main(String[] args){Single s = Single.getOne();}}
单例模式有以下三个特征:
  <span style="color: rgb(0, 128, 0);"><span lang="EN-US">1</span>、单例类只能有一个实例。<span lang="EN-US"></span>  <span lang="EN-US">2</span>、单例类必须自己自己创建自己的唯一实例。<span lang="EN-US"></span>  <span lang="EN-US">3</span>、单例类必须给所有其他对象提供这一实例。<span lang="EN-US"></span></span>
1 0