您的位置:首页 > 其它

单例模式

2013-11-15 16:37 225 查看
更多文章请进入:我的开源网

单例模式:是通过将类的无参构造方法设置成私有的,然后不提供任何有参的构造方法,对像由类的内部实例化,通过一个静态的方法提供给外部调用端使用,外部使用时只要通过类.静态方法就可以获得对象了。

实现方法一:

package com.cjh.demo;

/**

* 单例模式 方式一

* @author cjh

*

*/

public class Singleton {

/**

* 对象由自己内部new出来

*/

private static Singleton singleton = new Singleton();

/**

* 使用private的无参构造方法,这样就不能在外部new出对象了

*/

private Singleton(){

}

/**

* 通过一个静态的方法提供对象的实例,因为静态方法是可以通过类.方法调用的

* @return

*/

public static Singleton getInstance(){

return singleton;

}

/**

* 对象的方法,需要通过对象.方法调用

*/

public void aboutUS(){

System.out.println("我是一个单例模式的方法!");

}

}

实现方式二:

package com.cjh.demo2;

/**

* 单例模式 方式二

* @author cjh

*

*/

public class Singleton2 {

/**

* 对象引用

*/

private static Singleton2 singleton=null;

/**

* 使用private的无参构造方法,这样就不能在外部new出对象了

*/

private Singleton2(){

}

/**

* 通过一个静态的方法提供对象的实例,因为静态方法是可以通过类.方法调用的

* @return

*/

public static Singleton2 getInstance(){

if(null==singleton){

singleton= new Singleton2();

}

return singleton;

}

/**

* 对象的方法,需要通过对象.方法调用

*/

public void aboutUS(){

System.out.println("我是一个单例模式的方法!");

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: