class Result  //这个Result是类吗?是什么意思啊
{
private int date;
private boolean status = true;
public void setStatus(boolean status){
this.status=status;
}
public boolean getStatus(){
return status;
}
public void setData(int date){
this.date=date;
}
public int getData(){
return date;
}
}class Calculator extends Thread
{
private Result result;  //这句也不懂,是声明一个变量吗?
public Calculator(Result result){
this.result=result;
}
public void run(){
while (result.getStatus())  //这里的get.Status是什么方法啊?
{
try
{
sleep(100);
}
catch (InterruptedException e)
{
e.printStackTrace();
}
}
synchronized(result){
int sum=0;
for (int i=0;i<=100 ;i++ )
{
sum+=i;
}
result.setData(sum);
result.notifyAll();
}
}
}class Fetcher extends Thread
{
private Result result;
public Fetcher(Result result){
this.result=result;
}
public void run(){
synchronized(result){
result.setStatus(false);
try
{
result.wait();
}
catch (InterruptedException e)
{
e.printStackTrace();
}
System.out.println(result.getData());
}
}
}public class Resulttest
{
public static void main(String[] args){
Result r = new Result();
Calculator c=new Calculator(r);
Fetcher f = new Fetcher(r);
c.start();
f.start();
}
}问题都在上面的注释,刚学java没几天,还请多多指教

解决方案 »

  1.   

    class Result //这个Result是类吗?是什么意思啊?声明一个类,叫做Result
    private Result result; //这句也不懂,是声明一个变量吗?声明一个类的实例
    while (result.getStatus()) //这里的get.Status是什么方法啊?这个类的实例调用本身类的一个方法:getStatus(),这个方法在这里定义了:
    public boolean getStatus(){
    return status;
    }
      

  2.   

    没认真看书....  回答完毕1.注意关键词class
    2.你看有给这个东西付值吗?   就是个指引.或者说是个标识.或者书签.
    3.这个还不懂?看到这个没?public boolean getStatus(){
    return status;
    }去好好看看书..再多写点.刚刚学写代码.就是这样的.和你当初学英文读不出音标是一个原因.区别一个是和老外说.一个是和计算机说
      

  3.   

    1.class Result //这个Result是类吗?是什么意思啊
       用class修饰的当然是类
    2.private Result result; //这句也不懂,是声明一个变量吗?
      这里声明了一个Result类型的引用变量
    3.while (result.getStatus()) //这里的get.Status是什么方法啊?
      Result类中定义了一个方法public boolean getStatus(){}
      是getStaus()不是get.Status()
      

  4.   

    class Result //是一个实体类,将一些属性封装成了一个实体Result,他相当于飞机中的某一个零件{
    private int date;
    private boolean status = true;
    public void setStatus(boolean status){
    this.status=status;
    }
    public boolean getStatus(){
    return status;
    }
    public void setData(int date){
    this.date=date;
    }
    public int getData(){
    return date;
    }
    }class Calculator extends Thread
    {
    private Result result; //是声明一个变量,就像飞机的一个组成零件之一
    public Calculator(Result result){
    this.result=result;
    }
    public void run(){
    while (result.getStatus()) //这里的get.Status表示要拿到飞机零件中的某一个用途
    {
    try
    {
    sleep(100);
    }
    catch (InterruptedException e)
    {
    e.printStackTrace();
    }
    }
    synchronized(result){
    int sum=0;
    for (int i=0;i<=100 ;i++ )
    {
    sum+=i;
    }
    result.setData(sum);
    result.notifyAll();
    }
    }
    }class Fetcher extends Thread
    {
    private Result result;
    public Fetcher(Result result){
    this.result=result;
    }
    public void run(){
    synchronized(result){
    result.setStatus(false);
    try
    {
    result.wait();
    }
    catch (InterruptedException e)
    {
    e.printStackTrace();
    }
    System.out.println(result.getData());
    }
    }
    }public class Resulttest
    {
    public static void main(String[] args){
    Result r = new Result();
    Calculator c=new Calculator(r);
    Fetcher f = new Fetcher(r);
    c.start();
    f.start();
    }
    }
      

  5.   

    自己看视频教程,google一把,java视频教程多的一比
      

  6.   

    这个解释不错~~~
    不过,看得出楼主对Java中类与类之间的那些逻辑还没搞清楚,加把劲呀LZ