从类中发出返回值

时间:2013-11-04 00:20:11

标签: java class

所以这是我第一次使用Stackoverflow,这是我正在构建的Balloon程序。这也是我第一次构建在主程序中调用的独立类,我觉得我不理解一些基本的东西。

import java.util.Scanner;

public class Inflate
   {
    public static void main(String[] args)
        {
            //Part 1: Open Scanner
            Scanner keyboard = new Scanner(System.in);

            //Part 2: Create a balloon and inflate it
            System.out.println("To what radius would you like to inflate the balloon? ");
            Balloon newBalloon = new Balloon();
            newBalloon.setRadius(keyboard.nextDouble());

            //Part 3: Get the new volume
            System.out.println("The volume is: " + newBalloon.volume);

            //Part 4: Close scanner
            keyboard.close();
        }
}                       

class Balloon
{
    private double radius;
    public double volume;

    Scanner keyboard = new Scanner(System.in);

    public void setRadius(double Radius)
        {
            this.radius=radius;
        }

    public double getVolume()
        {
            volume=radius*radius*radius*Math.PI;
            return volume();
        }
}

主要问题是我的第38行:返回音量表明虽然它是在Balloon类开头创建的,但未找到该符号。

另外,我不认为我的第13行:newBalloon.setRadius正在使用正确的方法来定义新的半径。

感谢您的帮助。

1 个答案:

答案 0 :(得分:4)

volume是一个字段。删除括号

return volume;
             ^

详细说明:volume()表示您正在尝试执行一个名为volume的方法,该方法不带参数。通过删除括号,编译器会将其视为变量,您可以使用它。您正确地呼叫newBalloon.setRadius

请记住命名约定:变量以小写字符开头,除非它们是常量。