------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------
JAVA中实现多线程有两种方式:
第一种是继承Thread,并重写 run() 方法,然后调用start() 方法启动线程。
//创建线程的第一种方式
class T extends Thread {
public void run() {
}
}
第二种是实现Runnable,并重写run() 方法,然后通过Thread类建立线程对象,再将Runnable接口的子类对象作为实际参数传递给Thread类的构造函数,调用start()方法启动线程。
//创建线程的第二种方式
class T implements Runnable {
public void run() {
}
}
第一种方法虽然比第二种方法简单很多,但是并不推荐第一种方法,因为JAVA只支持单继承,如果你继承了Thread类就无法再继承其他类,而接口则是可以实现很多。
1.5提供了多线程升级解决方案。
将同步synchronized替换成了现实的lock操作。
Condition 监视器锁,
它替换了Object中的wait() notify() notifyAll()替换。
lock替换了synchronized
lock
unlock
newCondition()
InterruptedException抛异常
import java.util.concurrent.locks.*;导包
也就是一个锁里面可以绑定好几个Condition对象