单例设计模式及应用
来源:互联网 发布:nba马刺vs小牛数据 编辑:程序博客网 时间:2024/05/22 02:09
/*
单例设计模式:本类中只创建一个对象,外部通过方法只调用,改变,这一个对象
*/
单例设计模式:本类中只创建一个对象,外部通过方法只调用,改变,这一个对象
*/
class Single{ //饿汉式
//创建一个本类对象
private static Single s = new Single();
//构造函数私有化,外界不可访问,不可创建对象
private Single(){}
//定义一个方法返回该对象,让其程序可以获取到
public static Single getInstance() //返回值为该类 静态方法不能访问非静态变量
{
return s;
}
}
public class Demo {
public static void main(String[] agrs)
{
Single s=Single.getInstance(); //只创建一个对象,只用一个对象,通过方法形成可控。
} //定义一个这个类的变量 = 对象创建在本类中为私有,外部不可访问,通过类名.getInstance,来访问
}
/*
class Single{ //懒汉式(延迟加载)
private static Single s = null;
private Single(){}
static Single getInstance()
{
if(s==null)
{
s=new Single();
}
return s;
}
//创建一个本类对象
private static Single s = new Single();
//构造函数私有化,外界不可访问,不可创建对象
private Single(){}
//定义一个方法返回该对象,让其程序可以获取到
public static Single getInstance() //返回值为该类 静态方法不能访问非静态变量
{
return s;
}
}
public class Demo {
public static void main(String[] agrs)
{
Single s=Single.getInstance(); //只创建一个对象,只用一个对象,通过方法形成可控。
} //定义一个这个类的变量 = 对象创建在本类中为私有,外部不可访问,通过类名.getInstance,来访问
}
/*
class Single{ //懒汉式(延迟加载)
private static Single s = null;
private Single(){}
static Single getInstance()
{
if(s==null)
{
s=new Single();
}
return s;
}
}
public class Demo{
public static void main(String[] agrs)
{
}
}
public class Demo{
public static void main(String[] agrs)
{
}
}
*/
/*
* 单例设计模式应用
*
*/
class superMan{
private String name;
private static superMan s = new superMan("lalala");
private superMan(String name)
{
this.name=name;
}
public static superMan getInstance()
{
return s;
}
public void setName(String name)
{
this.name=name;
}
public String getName()
{
return this.name;
}
}
public class Demo2{
public static void main(String[] agrs)
{
superMan s1 = superMan.getInstance();
System.out.println( s1.getName());
superMan s2 = superMan.getInstance();
s2.setName("hahaha"); //改变里面的变量
System.out.println( s2.getName());
}
}
* 单例设计模式应用
*
*/
class superMan{
private String name;
private static superMan s = new superMan("lalala");
private superMan(String name)
{
this.name=name;
}
public static superMan getInstance()
{
return s;
}
public void setName(String name)
{
this.name=name;
}
public String getName()
{
return this.name;
}
}
public class Demo2{
public static void main(String[] agrs)
{
superMan s1 = superMan.getInstance();
System.out.println( s1.getName());
superMan s2 = superMan.getInstance();
s2.setName("hahaha"); //改变里面的变量
System.out.println( s2.getName());
}
}
阅读全文
0 0
- 单例设计模式及应用
- 设计模式之单例及应用场景简介
- 设计模式-单例模式应用场景
- 【设计模式】单例模式实践应用
- Android设计模式应用---单例模式
- 设计模式 - C++单例模式应用
- Nutz 设计模式应用 --- 单例模式
- 设计模式 单例模式的缺陷和补救办法及应用场景2
- 设计模式——单例模式及jdk中的应用
- 设计模式--单例应用 java
- 单例设计模式的应用场景
- 单例设计模式的简单应用
- java 单例模式例子及应用
- PHP单例模式及应用实例
- 单例模式--介绍、应用及代码
- 单例模式及应用简析
- 单例设计模式及内存划分
- php设计模式工厂模式及单例模式
- java 复习1
- USB扩展器插上键盘没有用
- 杂记2--QT布局管理器(QVBoxLayout,QHBoxLayout)不同部分比例大小设置方法
- HDU6201 | 2017 ACM-ICPC 亚洲区(沈阳赛区)网络赛-H transaction transaction transaction
- request.getParameter() 和request.getAttribute() 区别
- 单例设计模式及应用
- org.apache.catalina.LifecycleException: 配置Tomcat问题
- 读《微服务设计》
- Servlet学习,个人理解
- Codeforces 276D Little Girl and Maximum XOR【贪心】
- 全面升级Android面试之热更新问题
- Material Design 你要的都在这里了(持续跟新)
- jdbc中的事务回滚管理
- 获取下个月Java和sql的两种实现