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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1.JDK5之后的Lock锁:
        Lock lock = .....;//子类对象
        lock.lock();//获取锁
        try{
                //同步的代码
        }finally{
                lock.unlock();//解锁
        }
2.线程组:
        ThreadGroup:
                构造:ThreadGroup(String name);
        将线程添加到某个线程组:
        MyThread t = new MyThread(group,"线程名称");

        作用:可以将多个线程添加到某个组,统一管理;
              可以对组内的所有线程做统一操作;
3.线程池:
        Executors类中的一些静态方法:
                public static ExecutorService newCachedThreadPool()
                public static ExecutorService newFixedThreadPool(int nThreads):例子中使用的;
                public static ExecutorService newSingleThreadExecutor():
        ExecutorService类:
                Future submit():执行一个线程,并接受返回值;
        意义:
                可以实例化一组线程对象,并可以反复使用,不需要再次构造;

4.多线程实现方式3:
        1.实现Callable接口;
        2.重写call()方法;
        3.测试:
                使用线程池的方式启动线程;
5.定时器:
        1.TimerTask(抽象类):定义任务;
                1).继承自TimerTask;
                2).重写run()方法;
        2.使用Timer启动:
                构造方法:Timer();
                成员方法:
                        public void schedule(TimerTask task,long delay):在delay毫秒后开始执行TimerTask
                          public void schedule(TimerTask task,long delay,long period):安排指定的任务从指定的延迟后开始进行重复的固定延迟执行。
                        其它重载方法看帮助文档;
6.多线程常见面试题:见demo;
7.设计模式:
        1.简单工厂模式:
                1.提供"具体产品"类;
                2.提供"工厂"类:
                        1).方式一:内部针对每种产品,提供一个单独的getXxx()方法;
                        2).方式二:内部只提供一个方法,需要所有产品有一个父类,此方法声明:
                                        public 产品父类  get产品(String type){
                                                if(type.equals("")){
                                                        return 产品1;
                                                }
                                                if(type.equals("")){
                                                        return 产品2;
                                                }
                                        }
        2.工厂方法模式:
                1).提供"产品"接口
                2).提供"工厂"接口;
                3).每新增一个产品时,定义一个产品类,实现"产品"接口,
                   再定义一个"产品工厂"类,实现"工厂"接口;
8.单例模式:
        1.程序运行期间,全局只有一个某类的对象,此类就可以设计为"单例模式":
        2.要点:
                1).构造方法私有化;
                2).定义本类类型的私有、静态 变量;
                3).提供公有静态方法获取本类的对象;
        3.饿汉式:
                内部成员定义时,就直接实例化;
          懒汉式:
                内部成员定义时,先置为null,在公有方法中,先判断是否是null,然后再赋值,最后返回引用;

评分

参与人数 1技术分 +1 收起 理由
lwj123 + 1

查看全部评分

7 个回复

倒序浏览
膜拜大声
回复 使用道具 举报
哇哦  看看哦  谢谢~
回复 使用道具 举报
可以实例化一组线程对象
回复 使用道具 举报
哦哦,学到了
回复 使用道具 举报
膜拜。。。。。。。
回复 使用道具 举报
zdh 中级黑马 2015-5-22 21:25:28
7#
看看哦  谢谢~
回复 使用道具 举报
好厉害,谢谢了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马