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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© lizhichao 中级黑马   /  2015-9-9 10:13  /  301 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

单利模式:保证一个类仅能实例化一个对象。
步骤:
        1 私有构造 这样外界就无法new出本类的实例对象!
        2 创建本类对象。在本类new一个本类对象。这样不就是

只有一个实例化对象了吗?
        3 对外提供公共的访问方法

代码(一)饿汉式:
class Singleton{
        private Singleton(){
       
        }
        private static Singleton s = new Singleton();
       
        public static Singleton getInstance(){
                return s;
        }
       
}

代码(二)懒汉式:
class Singleton{
        private Singleton(){
        }
        private Singleton s;
        public static Singleton getInstance(){
                if(s==null){
                        s = new Singleton();
                }
        }
       
}
代码(三):
class Singleton{
        private Singleton(){}
       
        public static final Singleton = new Singleton();
}
----------------------------------------
多线程的通信
1什么时候需要通信
多线程并发执行的时候,在默认情况下cpu是随机切换线程的
如果我们希望他们按照一定的需求来运算 就需要通信


通讯对象
: 1.同步
        * 使用ReentrantLock类的lock()和unlock()方法进行同


* 2.通信
        * 使用ReentrantLock类的newCondition()方法可以获取

Condition对象
        * 需要等待的时候使用Condition的await()方法, 唤醒的

时候用signal()方法
        * 不同的线程使用不同的Condition, 这样就能区分唤醒

的时候找哪个线程了

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马