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

© mengxiang1993 中级黑马   /  2015-3-6 10:03  /  630 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. package day01;
  2. /*
  3. * 匿名内部类格式:
  4. * new 类名(){
  5. * 类体
  6. *}
  7. *
  8. * 匿名内部类实质是一个子类
  9. */

  10. public class MyThread {
  11.        

  12.         public static void main(String[] args) {
  13.                 new Thread(new Runnable() {
  14.                        
  15.                
  16.                         public void run() {
  17.                                
  18.                                 System.out.println("你执行不到我,因为会执行Thread子类的run方法");
  19.                                 /*
  20.                                  * 如果你覆盖了Thrad的run方法,程序会执行Thread子类的run方法
  21.                                  * 如果你覆盖的是Runnable接口的run方法,程序先会找到Thread类的run方法
  22.                                  * Thread类run方法如下:
  23.                                  * public void run(){
  24.                                  *   if(target!=null){
  25.                                  *      target.run();
  26.                                  *   }
  27.                                  * }
  28.                                  *
  29.                                  * 这个target是实现Runnable接口的对象,所以他会找实现Runnable接口的类的run方法
  30.                                  * 所以结果就是执行下面的Thread子类的run方法
  31.                                  * 输出:
  32.                                  * 1:Thread-0
  33.                                  *
  34.                                  *
  35.                                  */
  36.                                
  37.                         }
  38.                 }){
  39.                        
  40.                         @Override
  41.                         public void run() {
  42.                                 while(true){
  43.                                         try {
  44.                                                 Thread.sleep(1000);
  45.                                         } catch (InterruptedException e) {

  46.                                                 e.printStackTrace();
  47.                                         }
  48.                                         System.out.println("1:"+Thread.currentThread().getName());
  49.                                 }
  50.                                
  51.                         }
  52.                 }.start();

  53.         }

  54. }
复制代码


0 个回复

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