JAVA分别实现两种单例模式的实例代码
JAVA分别实现两种单例模式的实例代码
JAVA分别实现两种单例模式的实例代码,如果对你有帮助就看看吧,一个是JAVA的懒汉单例模式,一个是饿汉单例模式。
恶汉单例模式:
/*
* 设计模式: 解决某一类问题最行之有效的方法。
* java中有23中设计模式。
* 单例设计模式:一个类在内存中只存在一个对象。
*
* 想要保证对象唯一。
* 1.为了避免其他程序过多建立该类对象。先禁止其他程序建立该对象。
* 2.还为了让程序可以访问到该类对象,只要在本类中,自定义一个对象。
* 3.为了方便其他程序对自定义对象的访问,可以对外提供一些访问方式。
*
* 这三步怎么用代码体现呢?
* 1.将构造函数私有化。
* 2.在类中创造一个本类对象。
* 3.提供一个方法可以获取该对象。
*
* 对于事务该怎么描述,还怎么描述
* 当需要将该事物对象保证在内容中唯一时,就将以上的三步加上即可。
* */
class single{
private int num;
public void setNum(int num){
this.num = num;
}
public int getNum(){
return num;
}
private single(){
}
private static single s = new single();
public static single shili(){
return s;
}
}
public class test6 {
public static void main(String[] args){
single s1 = single.shili();
single s2 = single.shili();
s1.setNum(23);
System.out.println(s2.getNum());
}
} 懒汉单例模式:
/*
* 对象是方法被调用,才被初始化,也叫做对象的延时加载。成为懒汉式,不安全。
* danli类进入内容,对象还没有存在,只有调用了getins方法时。才会建立对象。
* */
class danli{
private static danli s = null;
private int num;
public void setNum(int num){
this.num = num;
}
public int getNum(){
return num;
}
private danli(){};
public static synchronized danli getins(){
if (s == null){
s = new danli();
}else{
return s;
}
return s;
}
}
public class test7 {
public static void main(String[] args){
danli s1 = danli.getins();
danli s2 = danli.getins();
s1.setNum(23);
System.out.println(s2.getNum());
}
}
资源均来自第三方,谨慎下载,前往第三方网站下载 解压密码:www.xkwo.com 解压密码:www.xkwo.com 解压密码:www.xkwo.com 解压密码:www.xkwo.com 解压密码:www.xkwo.com 解压密码:www.xkwo.com 解压密码:www.xkwo.com 解压密码:www.xkwo.com 解压密码:123456 或者 aidezy.com
本站所有文章、数据、图片均来自互联网,一切版权均归源网站或源作者所有。
如果侵犯了你的权益请来信告知我们删除。邮箱:737597453@qq.com


