Java 从类中发出返回值

Java 从类中发出返回值,java,class,Java,Class,这是我第一次使用Stackoverflow,这是我正在构建的一个气球程序。这也是我第一次在主程序中创建独立的类,我觉得我没有理解一些基本的东西 import java.util.Scanner; public class Inflate { public static void main(String[] args) { //Part 1: Open Scanner Scanner keyboard = new Sc

这是我第一次使用Stackoverflow,这是我正在构建的一个气球程序。这也是我第一次在主程序中创建独立的类,我觉得我没有理解一些基本的东西

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行:returnvolume指出,尽管符号是在类的开头创建的,但找不到它

另外,我认为我的第13行:newballon.setRadius没有使用正确的方法来定义新的半径


谢谢您的帮助。

volume
是一个字段。去掉括号

return volume;
             ^
对此进行详细说明:
volume()
表示您正在尝试执行一个名为
volume
的方法,该方法不带任何参数。通过删除括号,编译器会将其视为一个变量,而您确实拥有这个变量。您正在正确调用
newballon.setRadius


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

volume
是一个字段。去掉括号

return volume;
             ^
对此进行详细说明:
volume()
表示您正在尝试执行一个名为
volume
的方法,该方法不带任何参数。通过删除括号,编译器会将其视为一个变量,而您确实拥有这个变量。您正在正确调用
newballon.setRadius


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

还有System.out.println(“卷为:“+newballon.volume”);应该是System.out.println(“卷是:+newballon.getVolume());随着我在课堂上走得更远,我现在看到了这两个错误,但我很感激有人指出它们。我很抱歉这么晚才回来,但我从来没有接到有人回答的通知。Thank.allow.System.out.println(“卷为:“+newballon.volume”);应该是System.out.println(“卷是:+newballon.getVolume());随着我在课堂上走得更远,我现在看到了这两个错误,但我很感激有人指出它们。我很抱歉这么晚才回来,但我从来没有接到有人回答的通知。谢谢