一个简单的求圆面积和周长的程序:
public class Message
{
public float r;
double z,m;
public Message(float r)  
{     this.r=r;
      z= getM(float r); //加上float为什么有错呢? message都加了float的没错啊
      m=getM(float r);
}
double getZ(float r)
{
z=3.14*2*r;
return z;
}
double getM(float r)
{
m=3.14*r*r;
return m;
}
void show(float r)
{
System.out.println("r=:"+r1.r);
System.out.println("z=:"+z);
System.out.println("m=:"+m);
}
public static void main(String[] args)
{
Message r1=new Message(4);
r1.show();
}
} 在什么时候 方法()的参数列表里的参数才必须写明数据类型,什么情况下可写可不写,什么情况下必须不写呢?如上面的例子,为什么在z= getM(float r);  加了flaot有错,不加反而对了呢?而 Message(float r)等几个地方 不加却有错呢?

解决方案 »

  1.   

    方法声明的时候,参数要带上类型,调用的时候直接传参数
    找本入门书多看看哦,一句点破!明白了,厉害!多谢多谢!
    我现在正在看很基础很基础的书,但是总感觉练习的地方太少了,感觉看懂了,可是自己动手做书上的例子都还是比较吃力,如果叫我去看代码,通过学习什么扫雷之类的程序,又没到那个程度,但是不练习,看过的一会又忘了,前辈们才开始的时候是怎么通过练习来理解java基础的?急切望指教啊,困惑中……
      

  2.   

    再问一个问题,下面程序的作用是:一个圆锥类,底圆是一个圆的对象的引用。
    public class Yuan{
    double r;
    Yuan(double r)
    {  this.r=r;
    }
    double m()
    {
       double m;
       m=3.14*r*r;
       return m;
    }
    }
    public class YuanZ{
    Yuan y;
    double h;
    yuanZ(Yuan t1,double h)  //这里有错误。
    {
    this.y=t1;
    this.h=h;
    }
    double zm()
    {
    double zm;
    zm=y*h/3;
    return zm;
    }
    }
    class TestYuan
    {
    public static void main(String[] args)
    {
    Yuan t1 =new Yuan(6);
    System.out.println("r="+t1.r);
    System.out.println("m="+t1.m());
    YuanZ t2 =new YuanZ(t1,9);
    System.out.println("t2 y="+t2.y); 
    System.out.println("t2 h="+t2.h);
    System.out.println("t2 zm="+t2.zm());
    }
    }
    为什么那里会有错误呢?正确的应该怎么书写?
    其他地方还有错误的吗?
      

  3.   

    yuanZ要改成YuanZ,大写阿,如果你的本意是构造方法的话