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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

ExecutorService pool = Executors.newSingleThreadExecutor();
ExecutorService是一个接口。那么pool变量是什么。。
List list = new ArrayList(); 这里面list可以直接调用List接口的方法。。但是这里不是很清楚。。。



java.util.concurrent.Executors
public class Executorsextends Object此包中所定义的 Executor、ExecutorService、ScheduledExecutorService、ThreadFactory 和 Callable 类的工厂和实用方法。此类支持以下各种方法:
创建并返回设置有常用配置字符串的 ExecutorService 的方法。
创建并返回设置有常用配置字符串的 ScheduledExecutorService 的方法。
创建并返回“包装的”ExecutorService 方法,它通过使特定于实现的方法不可访问来禁用重新配置。
创建并返回 ThreadFactory 的方法,它可将新创建的线程设置为已知的状态。
创建并返回非闭包形式的 Callable 的方法,这样可将其用于需要 Callable 的执行方法中。


Executors是一个类。 他的方法newSingleThreadExecutor()为甚么,返回类型是一个接口类型。。????
public static ExecutorService newSingleThreadExecutor()创建一个使用单个 worker 线程的Executor,以无界队列方式来运行该线程。(注意,如果因为在关闭前的执行期间出现失败而终止了此单个线程,那么如果需要,一个新线程将代替它执行后续的任务)。可保证顺序地执行各个任务,并且在任意给定的时间不会有多个线程是活动的。与其他等效的 newFixedThreadPool(1) 不同,可保证无需重新配置此方法所返回的执行程序即可使用其他的线程。 返回:新创建的单线程 Executor这个是Pool 直接调用Executor的 execute()方法。内部实现Runnable()接口并使用内部类吗pool.execute(new Runnable(){                                                
//车上到路上不断产生车                       
public void run() {                              
           for(int i=1;i<1000;i++){                                       
            try {        //随机值                                               
           Thread.sleep((new Random().nextInt(10) + 1) * 1000);
                   } catch (InterruptedException e) {
                    e.printStackTrace();  
                     }                                      
                vechicles.add(Road.this.name+"_"+i);   
         }           
     }           
});

评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

2 个回复

倒序浏览
本帖最后由 e.c 于 2014-2-18 17:45 编辑

多态,面向接口编程可以让程序非常灵活。
ExecutorService pool表示pool指向的对象是实现了ExecutorService接口的对象或其子类对象。
Executors.newSingleThreadExecutor()函数声明返回值类型是ExecutorService,其实它返回的是实现了ExecutorService接口类的子类对象以,
把子类对象当作父类来。(多态)

评分

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

查看全部评分

回复 使用道具 举报
返回的不是接口吧 返回的是这个接口的实现类的对象
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马