黑马程序员技术交流社区

标题: 交通灯中---Road中有点不明白 [打印本页]

作者: 卢其龙    时间: 2012-1-6 04:33
标题: 交通灯中---Road中有点不明白
本帖最后由 卢其龙 于 2012-1-10 15:06 编辑

//创建 路 类
public class Road {
       
           //路线名
       private String name = "";
       //声明一个vechicle工具集合
       List<String> vechicle = new ArrayList<String>();
      
       //Road构造函数
       public Road ( final String name){
              this.name = name;
              
              //创建一个线程池---池中有一个线程
              ExecutorService pool =  Executors.newSingleThreadExecutor();
              //启动线程池中的线程
              //new Runnable(){} 虽然知道在干什么但不理解语法
              //这属于 匿名类吗?该怎么完整的理解这里呢?------------------------------------------------------?
              pool.execute(new Runnable(){
                    public void run()
                    {
                            //线程静态方法sleep需要捕捉异常
                            try {
                                        Thread.sleep( (new Random().nextInt(10)+1) * 1000 );
                                } catch (InterruptedException e) {
                                        e.printStackTrace();
                                }
                           
                            //在视频中提到了final?final 是定义常量,和全局有什么关系呢?-------------------?
                            for (int i =1;i <1000; i++){
                                    vechicle.add(name + "..." + i);
                            }
                    }
              }
              );
              
       }
}
作者: 闫江龙    时间: 2012-1-6 09:02
new Runnable()在这里是匿名内部类 作为execute的参数 是一个可运行的任务
定义final  是内名内部类使用了外部类中的局部变量name  在外部把name定义为final就有权限使用,否则使用的时候要Road.this.name这种格式




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2