2 回答
TA贡献1810条经验 获得超4个赞
在 java 函数/过程中称为方法。唯一的区别是函数返回值。不,没有像 JS 那样的提升(感谢上帝)。对变量的唯一要求是您必须在使用它们之前创建它们。就像C一样。但是方法是对象的一部分。所以它们被附加到对象上,你可以在它们的声明之上调用它们(虚拟方法,一切都是虚拟的:))。因为调用它们实际上涉及<Class>.method()
And Class 在执行之前就已经被编译和加载了。(一些反射可以绕过或改变这种行为)。
编译器可以相对自由地重新排序,但例如 volatile 可以禁止这种行为。
TA贡献1801条经验 获得超16个赞
在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
}
}
添加回答
举报