一尘不染

主类中的每个方法都必须是静态的吗?

java

我对Java完全不了解,但是在今晚练习时,我发现使用OOP设计时,主类中的每个方法都必须是静态的,对吗?在这段代码中,我无法在不是静态的类中调用方法。

似乎我可能遗漏了为什么要声明一个类是否为静态的问题。谢谢你的帮助!

public class JavaApplication2 {

private static CreateCar Vroom;
private static Limo Fuuu;

public static void main(String[] args) {
     Vroom = new CreateCar();
     Vroom.creator();
     getGas();
     addGas();
     getGas();
     Fuuu = new Limo();
     Fuuu.creator();
     Fuuu.wheels = 5;
     Fuuu.wheelie();
}
 public static int getGas(){
     Vroom.returnGas();
     return 0;
 }
 public static void addGas(){
     Vroom.fillerUp();
 } 
}

阅读 513

收藏
2020-12-03

共1个答案

一尘不染

您可以调用非静态方法,但是只能通过对象来调用。也就是说,您需要在给定对象上调用该方法。

您的主类也可以实例化,因此并非主类中的每个方法都必须是静态的。例如:

public class MainClass {
    int value;

    public void printValue() {
        System.out.println("" + value);
    }

    public static void main(String[] args){
        MainClass o = new MainClass();
        o.printValue();
    }
}
2020-12-03