进阶day06-匿名内部类实现多线程(重点掌握)
This commit is contained in:
57
javaSE-day06/src/com/inmind/noname_thread03/Demo03.java
Normal file
57
javaSE-day06/src/com/inmind/noname_thread03/Demo03.java
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
package com.inmind.noname_thread03;
|
||||||
|
/*
|
||||||
|
1.匿名内部类的语法:
|
||||||
|
new 父类名|接口名(){
|
||||||
|
要重写的方法
|
||||||
|
}
|
||||||
|
|
||||||
|
2.匿名内部类的作用:将父类或者接口的子类(实现类)的定义和对象的创建用一段代码操作完毕
|
||||||
|
匿名内部类一定是多态
|
||||||
|
|
||||||
|
3.线程的启动方式
|
||||||
|
1.继承Thread
|
||||||
|
2.实现Runnable
|
||||||
|
*/
|
||||||
|
public class Demo03 {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
//普通写法
|
||||||
|
MyThread myThread = new MyThread();
|
||||||
|
myThread.start();
|
||||||
|
|
||||||
|
//匿名内部类启动多线程方式一 (继承Thread)
|
||||||
|
Thread thread1 = new Thread(){
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
System.out.println(Thread.currentThread().getName()+"线程启动了");
|
||||||
|
}
|
||||||
|
};
|
||||||
|
thread1.start();
|
||||||
|
|
||||||
|
//匿名对象启动多线程(最终形态)
|
||||||
|
new Thread(){
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
System.out.println(Thread.currentThread().getName()+"线程启动了");
|
||||||
|
}
|
||||||
|
}.start();
|
||||||
|
//------------------------------------------------------
|
||||||
|
//匿名内部类启动多线程方式二 (实现Runnable)
|
||||||
|
Runnable runnable = new Runnable(){
|
||||||
|
@Override
|
||||||
|
public void run() {//新的线程要执行的任务代码
|
||||||
|
System.out.println(Thread.currentThread().getName()+"线程启动了");
|
||||||
|
}
|
||||||
|
};
|
||||||
|
Thread thread2 = new Thread(runnable);
|
||||||
|
thread2.start();
|
||||||
|
|
||||||
|
//匿名对象启动多线程方式二(重点!!!!!!!)(最终形态)
|
||||||
|
new Thread(new Runnable(){
|
||||||
|
@Override
|
||||||
|
public void run() {//新的线程要执行的任务代码
|
||||||
|
System.out.println(Thread.currentThread().getName()+"线程启动了");
|
||||||
|
}
|
||||||
|
}).start();
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
package com.inmind.noname_thread03;
|
||||||
|
|
||||||
|
public class MyThread extends Thread{
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
|
||||||
|
System.out.println(Thread.currentThread().getName()+"线程启动了");
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user