[置顶]单例模式的理解与应用
来源:互联网 发布:数据库系统概论第5版 编辑:程序博客网 时间:2024/06/14 10:43
单例模式
下面是java中使用单例模式的例子
public class BusinessBll{ private static BusinessBll bussinessBll = null; private Context context; public BusinessBll(Context context){ this.context = context; } public static BusinessBll getBusinessBll(Context context){ if(businessBll == null){ businessBll = new BusinessBll(context); } return businessBll; } }
下面这个构造函数 是单例的关键
public static BusinessBll getBusinessBll(Context context){ if(businessBll == null){ businessBll = new BusinessBll(context); } return businessBll; }
单例模式用c++实现如下图
简单说就是只能被new一次,其他部分要使用业务逻辑层 只能通过将原来的对象复制
怎么复制?
这里的CDALFile是类,pObjFile是类的对象,作为参数传到函数init中,在init函数中对单例模式下的对象进行修改
这是c++中的单例 ,这是一种设计模式,
就那业务逻辑层来说, 仅能允许 业务逻辑层对象被实例化一次,简单说就是只能被new一次,
●单例模式中
//单例模式代码public class dd { public static int iCount = 0; static class abc { public static abc m_a; public static abc initabc() { //2.自定义函数initabc封装构造函数abc(),使得构造函数只能在 //initabc()里面调用,且通过if语句使得构造函数abc()只能被调用一次 if (m_a == null) { m_a = new abc(); } return m_a; } private abc()//1.一个无参的空构造函数,且为private型,保证不为外部随意调用 {} /*测试方法:打印m_a的值 public boolean getM_A(){ System.out.println(m_a); return true; } */ } /** * @param args */ public static void main(String[] args) { abc.m_a = null;//构造函数是private或protected时,不能用new方法构造出一个对象,是public时可以 abc.initabc(); abc test1 = abc.initabc();//调用initabc方法时其实已经跳过abc(),m_a的值是第一次构造时的值 //test1.getM_A(); abc test2; test2 = abc.initabc();//调用initabc方法时其实已经跳过abc(),m_a的值是第一次构造时的值 //test2.getM_A(); System.out.println("nihao"); }}
1 0
- [置顶]单例模式的理解与应用
- 单例模式的理解与应用
- [置顶] 设计模式-单例模式(Singleton)在Android中的应用场景和实际使用遇到的问题
- 对工厂模式与单例模式的理解
- 单例模式的理解
- 单例模式的理解
- 单例模式的理解
- 单例模式的理解
- [置顶] PHP单例模式面试注意事项
- JAVA Static方法与单例模式的理解
- JAVA Static方法与单例模式的理解
- 关键字static与单例模式的一点理解
- 彻头彻尾理解单例模式与多线程
- 单例模式理解与总结
- 单例模式的应用
- 单例模式的应用
- 单例模式的应用
- 单例模式的应用
- Tiny即将推出DSL风格数据库编程框架
- [置顶]android创建sqlite数据库
- 模板文件是否有大小限制?
- [置顶]java的SE、EE、ME、跨平台性质、安装jdk
- Tiny框架增加RESTful访问支持
- [置顶]单例模式的理解与应用
- 为什么web应用在tomcat启动时报java.lang.ClassCastException异常?
- MVC记录
- [置顶]java web 编程学习总结
- Tiny工程可以配置多个application.xml吗
- yii2 验证码详细代码
- 为什么编译tiny工程出错,提示"不兼容的类型"
- Tiny框架的应用定位
- 为什么我写的page页面无法渲染