Java 我能';我不明白为什么我做的一个类是';行不通

Java 我能';我不明白为什么我做的一个类是';行不通,java,Java,我刚从对象和类开始,当我试图通过.method在类中使用方法时,我得到了一个语法错误。我在之前的练习题中使用了几乎相同的格式,效果很好,所以我在这里画了一个空白 这是对象的类 public class Automobile { public double mpg; public double gallons = 0; public Automobile(double mpg) { this.mpg = mpg; } public voi

我刚从对象和类开始,当我试图通过.method在类中使用方法时,我得到了一个语法错误。我在之前的练习题中使用了几乎相同的格式,效果很好,所以我在这里画了一个空白

这是对象的类

public class Automobile {
    public double mpg;
    public double gallons = 0;

    public Automobile(double mpg) {
        this.mpg = mpg;
    }

    public void fill(double f) {
        gallons += f;
    }

    public void takeTrip(double m) {
        gallons = gallons - (1 / (mpg / m));
    }

    public void reportFuel() {
        System.out.println(gallons);
    }
}
这是tester类

public class Tester {
Automobile myBmw = new Automobile(24);
 myBmw.fill(20);
 myBmw.takeTrip(100);
 myBmw.reportFuel();
}

根据java语法,您不能编写此处提到的可执行语句:

 myBmw.fill(20);
 myBmw.takeTrip(100);
 myBmw.reportFuel();

方法/构造函数/块已用完。您需要根据需要将代码移动到适当的位置。

根据java语法,您不能编写此处提到的可执行语句:

 myBmw.fill(20);
 myBmw.takeTrip(100);
 myBmw.reportFuel();

方法/构造函数/块已用完。您需要根据需要将代码移动到适当的位置。

根据java语法,您不能编写此处提到的可执行语句:

 myBmw.fill(20);
 myBmw.takeTrip(100);
 myBmw.reportFuel();

方法/构造函数/块已用完。您需要根据需要将代码移动到适当的位置。

根据java语法,您不能编写此处提到的可执行语句:

 myBmw.fill(20);
 myBmw.takeTrip(100);
 myBmw.reportFuel();

方法/构造函数/块已用完。您需要根据需要将代码移动到适当的位置。

您的
Tester
类正在尝试在有效的执行上下文(即
方法
静态
块)之外执行代码


例如…

您的
Tester
类试图在有效的执行上下文(即
方法
静态
块)之外执行代码


例如…

您的
Tester
类试图在有效的执行上下文(即
方法
静态
块)之外执行代码


例如…

您的
Tester
类试图在有效的执行上下文(即
方法
静态
块)之外执行代码


例如…

您不能在这样的类中执行此操作。您必须从方法/块调用其他类方法

public class Tester {
  Automobile myBmw = new Automobile(24);
  public Tester(){  // It may be any other function 

    myBmw.fill(20);
    myBmw.takeTrip(100);
    myBmw.reportFuel();
  }

  // OR if you miss the main()
  public static void main(String args[]){
    Automobile myBmw = new Automobile(24); 
    myBmw.fill(20);
    myBmw.takeTrip(100);
    myBmw.reportFuel();
  }
}

你不能在课堂上这样做。您必须从方法/块调用其他类方法

public class Tester {
  Automobile myBmw = new Automobile(24);
  public Tester(){  // It may be any other function 

    myBmw.fill(20);
    myBmw.takeTrip(100);
    myBmw.reportFuel();
  }

  // OR if you miss the main()
  public static void main(String args[]){
    Automobile myBmw = new Automobile(24); 
    myBmw.fill(20);
    myBmw.takeTrip(100);
    myBmw.reportFuel();
  }
}

你不能在课堂上这样做。您必须从方法/块调用其他类方法

public class Tester {
  Automobile myBmw = new Automobile(24);
  public Tester(){  // It may be any other function 

    myBmw.fill(20);
    myBmw.takeTrip(100);
    myBmw.reportFuel();
  }

  // OR if you miss the main()
  public static void main(String args[]){
    Automobile myBmw = new Automobile(24); 
    myBmw.fill(20);
    myBmw.takeTrip(100);
    myBmw.reportFuel();
  }
}

你不能在课堂上这样做。您必须从方法/块调用其他类方法

public class Tester {
  Automobile myBmw = new Automobile(24);
  public Tester(){  // It may be any other function 

    myBmw.fill(20);
    myBmw.takeTrip(100);
    myBmw.reportFuel();
  }

  // OR if you miss the main()
  public static void main(String args[]){
    Automobile myBmw = new Automobile(24); 
    myBmw.fill(20);
    myBmw.takeTrip(100);
    myBmw.reportFuel();
  }
}
换块

public class Tester {
Automobile myBmw = new Automobile(24);
 myBmw.fill(20);
 myBmw.takeTrip(100);
 myBmw.reportFuel();
}

或者将它放在Tester类中的另一个方法或静态{}块中(为此,您需要将汽车实例声明为静态)

更改该块

public class Tester {
Automobile myBmw = new Automobile(24);
 myBmw.fill(20);
 myBmw.takeTrip(100);
 myBmw.reportFuel();
}

或者将它放在Tester类中的另一个方法或静态{}块中(为此,您需要将汽车实例声明为静态)

更改该块

public class Tester {
Automobile myBmw = new Automobile(24);
 myBmw.fill(20);
 myBmw.takeTrip(100);
 myBmw.reportFuel();
}

或者将它放在Tester类中的另一个方法或静态{}块中(为此,您需要将汽车实例声明为静态)

更改该块

public class Tester {
Automobile myBmw = new Automobile(24);
 myBmw.fill(20);
 myBmw.takeTrip(100);
 myBmw.reportFuel();
}


或者将它放在Tester类中的另一个方法或静态{}块中(为此,您需要将汽车实例声明为静态)

您应该使用main类,我已经执行了您的代码,并且在使用main类时运行良好

public class Tester {
public static void main(String[] args) {
    Automobile myBmw = new Automobile(24);
     myBmw.fill(20);
     myBmw.takeTrip(100);
     myBmw.reportFuel();
}
}
如果您不想使用main(),那么您应该为它使用一个方法

public void testME() {
        Automobile myBmw = new Automobile(24);
        myBmw.fill(20.0);
        myBmw.takeTrip(100);
        myBmw.reportFuel();
    }

您应该使用main类,我已经执行了您的代码,并且在使用main类时运行良好

public class Tester {
public static void main(String[] args) {
    Automobile myBmw = new Automobile(24);
     myBmw.fill(20);
     myBmw.takeTrip(100);
     myBmw.reportFuel();
}
}
如果您不想使用main(),那么您应该为它使用一个方法

public void testME() {
        Automobile myBmw = new Automobile(24);
        myBmw.fill(20.0);
        myBmw.takeTrip(100);
        myBmw.reportFuel();
    }

您应该使用main类,我已经执行了您的代码,并且在使用main类时运行良好

public class Tester {
public static void main(String[] args) {
    Automobile myBmw = new Automobile(24);
     myBmw.fill(20);
     myBmw.takeTrip(100);
     myBmw.reportFuel();
}
}
如果您不想使用main(),那么您应该为它使用一个方法

public void testME() {
        Automobile myBmw = new Automobile(24);
        myBmw.fill(20.0);
        myBmw.takeTrip(100);
        myBmw.reportFuel();
    }

您应该使用main类,我已经执行了您的代码,并且在使用main类时运行良好

public class Tester {
public static void main(String[] args) {
    Automobile myBmw = new Automobile(24);
     myBmw.fill(20);
     myBmw.takeTrip(100);
     myBmw.reportFuel();
}
}
如果您不想使用main(),那么您应该为它使用一个方法

public void testME() {
        Automobile myBmw = new Automobile(24);
        myBmw.fill(20.0);
        myBmw.takeTrip(100);
        myBmw.reportFuel();
    }

您并没有在tester类中提供main方法,所以出现了错误

public class Tester {
public static void main(String args[]){ // main method required.
Automobile myBmw = new Automobile(24);
 myBmw.fill(20);
 myBmw.takeTrip(100);
 myBmw.reportFuel();
}
}

您并没有在tester类中提供main方法,所以出现了错误

public class Tester {
public static void main(String args[]){ // main method required.
Automobile myBmw = new Automobile(24);
 myBmw.fill(20);
 myBmw.takeTrip(100);
 myBmw.reportFuel();
}
}

您并没有在tester类中提供main方法,所以出现了错误

public class Tester {
public static void main(String args[]){ // main method required.
Automobile myBmw = new Automobile(24);
 myBmw.fill(20);
 myBmw.takeTrip(100);
 myBmw.reportFuel();
}
}

您并没有在tester类中提供main方法,所以出现了错误

public class Tester {
public static void main(String args[]){ // main method required.
Automobile myBmw = new Automobile(24);
 myBmw.fill(20);
 myBmw.takeTrip(100);
 myBmw.reportFuel();
}
}

我忘了主菜,觉得有点傻,因为我做的其他事情都是这样。但现在我在想,我不知道main是如何工作的。main是eclipse的内置方法,或者它是一个函数,只是告诉程序编译里面的所有内容。@Phil
main()
是程序的起点,但它不是内置方法。它只是告诉JVM从这里开始。我觉得忘记了主要部分有点愚蠢,因为我做的其他事情都是这样的。但现在我在想,我不知道main是如何工作的。main是eclipse的内置方法,或者它是一个函数,只是告诉程序编译里面的所有内容。@Phil
main()
是程序的起点,但它不是内置方法。它只是告诉JVM从这里开始。我觉得忘记了主要部分有点愚蠢,因为我做的其他事情都是这样的。但现在我在想,我不知道main是如何工作的。main是eclipse的内置方法,或者它是一个函数,只是告诉程序编译里面的所有内容。@Phil
main()
是程序的起点,但它不是内置方法。它只是告诉JVM从这里开始。我觉得忘记了主要部分有点愚蠢,因为我做的其他事情都是这样的。但现在我在想,我不知道main是如何工作的。main是eclipse的内置方法,或者它是一个函数,只是告诉程序编译里面的所有内容。@Phil
main()
是程序的起点,但它不是内置方法。它只是告诉JVM从这里开始。