java:在计算中使用默认构造函数

时间:2015-06-09 16:26:33

标签: java constructor

我必须使用构造函数编写程序,使用5种方法计算圆的面积:

:创建半径= 1

的圆的构造函数

setRadius :采用双参数并将半径设置为参数

getRadius :返回一个带有半径值

的double参数

computeDiameter :计算直径并返回直径值

computeArea :计算区域并返回区域的值

到目前为止,我到了这里..

主类:

class MyClass{


        public static void main(String[] args) {

         MyClass1 circle= new MyClass1();

         System.out.println(circle.computeArea());          

        }

    }

这是第二堂课..虽然我没有将它命名为 Circle ..

public class MyClass1 {

    private double radius;
    private double diameter;
    private double area;

    public MyClass1(){

        radius= 1.0;
    }

    public void setRadius(double radius){

        this.radius= radius;
    }

    public double getRadius(){

        return radius;
    }

    public double computeDiameter(){

        diameter= 2.0*radius;
        return diameter;
    }

    public double computeArea(){

        area= (Math.PI* Math.pow(diameter, 2))/4;
        return area;
    }

问题是该区域的输出为0.0

3 个答案:

答案 0 :(得分:2)

你的diamter最初为0,只在调用computeDiameter()后才设置为正确的值,所以尝试替换 area= (Math.PI* Math.pow(diameter, 2))/4; area= (Math.PI* Math.pow(computeDiameter(), 2))/4;

答案 1 :(得分:1)

嗯,你没有给直径一个值,所以直径是0。

答案 2 :(得分:1)

在构造函数中:

public MyClass1(){
    radius= 1.0;
}

diameter未初始化。所以它默认设置为0值。

你的方法:

public double computeArea(){
    area= (Math.PI* Math.pow(diameter, 2))/4;
    return area;
}

使用diameter参数,但在使用时它为零。