- package day01;
- /*
- * 匿名内部类格式:
- * new 类名(){
- * 类体
- *}
- *
- * 匿名内部类实质是一个子类
- */
- public class MyThread {
-
- public static void main(String[] args) {
- new Thread(new Runnable() {
-
-
- public void run() {
-
- System.out.println("你执行不到我,因为会执行Thread子类的run方法");
- /*
- * 如果你覆盖了Thrad的run方法,程序会执行Thread子类的run方法
- * 如果你覆盖的是Runnable接口的run方法,程序先会找到Thread类的run方法
- * Thread类run方法如下:
- * public void run(){
- * if(target!=null){
- * target.run();
- * }
- * }
- *
- * 这个target是实现Runnable接口的对象,所以他会找实现Runnable接口的类的run方法
- * 所以结果就是执行下面的Thread子类的run方法
- * 输出:
- * 1:Thread-0
- *
- *
- */
-
- }
- }){
-
- @Override
- public void run() {
- while(true){
- try {
- Thread.sleep(1000);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- System.out.println("1:"+Thread.currentThread().getName());
- }
-
- }
- }.start();
- }
- }
复制代码
|
|