/*
*实现线程的另一个方式,接口实现
*实现接口Runnable,重写run方法
*/
public class SunRunnable implements Runnable {
public void run() {
for(int i = 0; i<5; i++) {
System.out .println("run" + "..." + i);
}
}
}
/*
* 实现接口方式的线程
* 创建Thread类对象,构造方法中传递Runnable接口实现类
* 调用Thread类方法start()
* 实现Runnable的好处,避免单继承的局限性,所以较为常用
*/
public class ThreadDemo1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
SunRunnable sr = new SunRunnable();
Thread t = new Thread(sr);
t.start();
for(int i = 0; i < 5; i++) {
System.out .println("main" + "..." + i);
}
}
}
/*
* 实现接口方式的线程
* 创建Thread类对象,构造方法中传递Runnable接口实现类
* 调用Thread类方法start()
*
*/
public class ThreadDemo1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
SunRunnable sr = new SunRunnable();
Thread t = new Thread(sr);
t.start();
for(int i = 0; i < 5; i++) {
System.out .println("main" + "..." + i);
}
/*
* 匿名内部类
*/
//继承方式 XXX extends Thread{ public void run(){} }
new Thread () {
public void run() {
System.out .println("!!!");
}
}.start();
//实现接口方式 xxx implements Runnable{ public void run(){} }
Runnable r = new Runnable() {
public void run() {
System.out .println("III");
}
};
new Thread(r).start();
new Thread(new Runnable()) {
public void run() {
System.out .println("###");
}
}).start();
}
}