java中声明方法的顺序

java中声明方法的顺序,java,methods,Java,Methods,在C/C++中,我们必须在调用函数之前声明它们。在Javascript中,有一个提升变量和函数的方法。我找不到关于Java的信息。也有很多方法吗 在java中,函数/过程称为方法。唯一的区别是函数返回值。不,没有像JS(感谢上帝)那样的吊装。变量的唯一要求是在使用变量之前必须创建它们。就像C。 但是方法是对象的一部分。所以它们被附加到对象上,您可以在其声明上方调用它们(虚拟方法,一切都是虚拟的:))。 因为调用它们实际上涉及到.method(),并且在执行该类之前已经编译并加载了该类。(某些反射

在C/C++中,我们必须在调用函数之前声明它们。在Javascript中,有一个提升变量和函数的方法。我找不到关于Java的信息。也有很多方法吗

在java中,函数/过程称为方法。唯一的区别是函数返回值。不,没有像JS(感谢上帝)那样的吊装。变量的唯一要求是在使用变量之前必须创建它们。就像C。 但是方法是对象的一部分。所以它们被附加到对象上,您可以在其声明上方调用它们(虚拟方法,一切都是虚拟的:))。 因为调用它们实际上涉及到
.method()
,并且在执行该类之前已经编译并加载了该类。(某些反射可以绕过或更改此行为)

编译器可以相对自由地重新排序,但例如volatile可以禁止这种行为。
顺便说一下:

在java中有两种类型的方法:实例方法和类方法。要调用前者,您需要实例化该类,而两个调用后者,您不需要。以下是一个例子:

public class MyClass{

  public String instanceMethod(){
    return "This is from instance method";
  }

  public static String classMethod(){
    return "This is from class method";
  }

  public static void main(String[] args){

    System.out.println(MyClass.classMethod()); //will work

    System.out.println(MyClass.instanceMethod()); //compilation error

    MyClass myInstance = new MyClass();
    System.out.println(myInstance.instanceMethod()); //will work

  }
}

看看这个,同样在Java中叫做methodsYeah,我忘了写我问的是方法,不是变量。无论如何,我需要阅读关于反思的文章。谢谢你,你没有实例化一个类。从类实例化对象。这意味着通过从类创建对象来实例化类,因为创建的对象将是该类的实例。听说过“抽象类不能实例化”这句话吗@尼科姆