A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 焦亚星 中级黑马   /  2013-2-1 12:30  /  1612 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 焦亚星 于 2013-2-1 14:08 编辑

构造函数私有化的目的是什么

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

4 个回复

倒序浏览
只能自己本类创建  一般为了完成单例模式

代码
public class Singleton {

    private static Singleton uniqueInstance = null;



    private Singleton() {

       // Exists only to defeat instantiation.

    }



    public static Singleton getInstance() {

       if (uniqueInstance == null) {

           uniqueInstance = new Singleton();

       }

       return uniqueInstance;

    }

    // Other methods...

}

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

回复 使用道具 举报
构造函数 私有化 其实就是 传说中的 单例模式

单例模式也是一种比较常见的设计模式,它到底能带给我们什么好处呢?其实无非是三个方面的作用:

第一、控制资源的使用,通过线程同步来控制资源的并发访问;

第二、控制实例产生的数量,达到节约资源的目的。

第三、作为通信媒介使用,也就是数据共享,它可以在不建立直接关联的条件下,让多个不相关的两个线程或者进程之间实现通信。

比如,数据库连接池的设计一般采用单例模式,数据库连接是一种数据库资源

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

回复 使用道具 举报
构造函数私有化的目的是:就是可以保证一个类在内存中的对象唯一性。防止调用者通过new来创建新实例。
构造函数私有化主要是单例模式的第一步。
单例设计模式。解决的问题:就是可以保证一个类在内存中的对象唯一性。
步骤:
1,私有化该类构造函数。  (不允许其他程序用new创建该类对象)
2,通过new在本类中创建一个本类对象。  (在该类创建一个本类实例)
3,定义一个公有的方法,将创建的对象返回。  (对外提供一个方法让其他程序可以获取该对象)

评分

参与人数 1技术分 +1 收起 理由
冯海霞 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马