标签:
------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、ios培训、.Net培训</a>、期待与您
交流!------
Java开启线程的两种方式:
方式一:成为线程(Thread)的儿子,即继承Thread类
简单代码如下:
class Student extends Thread
{
Student(String name)
{
super(name);
}
public void run()
{
for(int i=0;i<5;i++)
{
System.out.println(Thread.currentThread().getName()+"run...."+i);
}
}
}
public class createThread1
{
public static void main(String[] args)
{
Student s1=new Student("zhangsan");
Student s2=new Student("lisi");
s1.start();
s2.start();
}
}
如果Student在成为线程(Thread)的儿子之前,就已经是别人儿子了怎么办?一个儿子不可能有两个爹的,
那么就要用到第二种方式了
方式二:按照规则,实现一个Runnable接口
class Student implements Runnable
{
Student(String name)
{
this.name=name;
}
public void run()
{
for(int i=0;i<5;i++)
{
System.out.println(Thread.currentThread().getName()+"run...."+i);
}
}
}
public class createThread1
{
public static void main(String[] args)
{
Student s1=new Student("zhangsan");
Student s2=new Student("lisi");
Thread t1=new Thread(s1);
Thread t2=new Thread(s2);
t1.start();
t2.start();
}
}
实现Runnable避免了继承的局限性
总结:Java只支持但继承,但是可以多实现,避免了继承体系过于庞大,而实现接口的方式则不同,需要某个功能时只需要去实现借口就可以了。
这种方式更加灵活。
------<a href="http://www.itheima.com" target="blank">Java培训、Android培训、ios培训、.Net培训</a>、期待与您
交流!------
标签:
原文地址:http://www.cnblogs.com/z-k47/p/4175748.html