黑马程序员技术交流社区
标题:
为什么实现Runnable接口的线程能够共享没有被static修饰的变量
[打印本页]
作者:
as604049322
时间:
2014-11-27 18:30
标题:
为什么实现Runnable接口的线程能够共享没有被static修饰的变量
本帖最后由 as604049322 于 2014-11-27 19:08 编辑
现在看到《毕向东_Java基础视频教程第11天-08-多线程(创建线程-实现Runnable接口)》,不明白为什么这种方式几个线程就可以共享被private修饰的变量,而继承Thread类就只有被static修饰的变量能够被几个线程同时共享数据。:(
代码如下:
class Ticket implements Runnabl
{
private int tick = 100;
public void run()
{
while(true)
{
if(tick>0)
{
System.out.println(Thread.currentThread().getName()+"....sale : "+ tick--);
}
}
}
}
class TicketDemo
{
public static void main(String[] args)
{
Ticket t = new Ticket();
Thread t1 = new Thread(t);//创建了一个线程;
Thread t2 = new Thread(t);//创建了一个线程;
Thread t3 = new Thread(t);//创建了一个线程;
Thread t4 = new Thread(t);//创建了一个线程;
t1.start();
t2.start();
t3.start();
t4.start();
}
}
作者:
as604049322
时间:
2014-11-27 19:07
懂了。因为只建立了一个对象。Ticket t = new Ticket();
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2