首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

为啥会和创建对象的语句是一样的呢

2011-12-17 
为什么会和创建对象的语句是一样的呢 ?classTest{publicstaticvoidmain(String[]args){QueueqnewQueue()

为什么会和创建对象的语句是一样的呢 ?
class   Test
{
public   static   void   main(String[]   args)
{
Queue   q=new   Queue();
Producer   p=new   Producer(q);
Consumer   c=new   Consumer(q);
p.start();
c.start();
}
}

class   Producer   extends   Thread
{

Queue   q;                     //
Producer(Queue   q)//这里为什么会与语句
{                                 //Queue   q=new   Queue();
this.q=q;//一样呢  
}                                   //
public   void   run()

{
for(int   i=0;i <10;i++)
{
q.put(i);
System.out.println( "Producer   put   "+i);
}
}

}
class   Consumer   extends   Thread
{
Queue   q;//
Consumer(Queue   q)//还有这里
{                               //
this.q=q;//
}                                     //
public   void   run()
{
while(true)
{
System.out.println( "Consumer   get   "+q.get());
}
}
}
class   Queue
{
int   value;
public   void   put   (int   i)
{
value=i;
}
public   int   get()
{
return   value;
}

}

[解决办法]
不一样,一个是创建新对象,一个是传递一个引用
[解决办法]
最好再看看面向对象的书籍和相关语法。你使用new操作符来创建对象,和传递应用是不一样的。

int i=1;

put(int i)
{
}
中i的作用一样吗?

热点排行