public class MyClass {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
从上面开始,如果我们说MyClass
是类,而public static void main(String[] args)
是方法,那么我想知道代码的哪一部分将被视为对象。
如果我们说类有对象和对象都有方法,那么在上面的代码中,哪个部分是对象?这里有没有创建对象?
答案 0 :(得分:7)
static
方法不属于对象引用,而是属于类。您可以在不创建类实例的情况下执行static
方法。知道这一点,这里创建的唯一对象引用将是:
String[] args
object String
数组内的每个args
"Hello world"
String
。请注意,args
及其内容不是由您创建的,JVM会这样做(感谢Thilo的评论)。
答案 1 :(得分:4)
在上面的例子中,没有创建类的对象。要做到这一点,你需要写:
MyClass myclass = new MyClass();
答案 2 :(得分:0)
那里没有创建对象。因为这是程序启动的主要方法。
如果它不是static
,否则,它将需要instance
对象的执行。
答案 3 :(得分:0)
静态方法无需创建要执行的对象。加载类时,类上的静态成员由JVM自动加载。
特别是在Java中执行时,JVM会找到main
方法并从执行开始执行它。
然后,执行main
方法中的每个语句直到终止点。
在main方法中,String args[]
是一个对象数组,当您需要通过命令行传递参数时,它非常有用。
因此,在 JVM 上加载类时,最后{strong} {<1}}方法执行。因此,我们不需要static
方法执行的实例/对象
那么何时在JVM上加载main方法?初始化时会加载它以创建像这样的任何对象
main
它调用默认构造函数MyClass myobj = new MyClass();
并加载类