为什么不用Java创建对象?

时间:2014-01-19 12:01:21

标签: java class

我正在学习Java,而令我感到惊讶的一件事就是你不要从类中创建一个对象。例如:

class helloworld{
  public static void main(String[] args){
    System.out.println("Hello world!");
  }
}

我不明白的是,我一直认为一个类是对象的蓝图,而在这里你不创建一个对象,程序只是从类中运行。是否创建了一个从隐式运行main方法的对象?我没有完全表达这一点,并假设我错过了一些理解 - 有人可以解释一下吗?

4 个答案:

答案 0 :(得分:4)

“作为对象蓝图的类”是Java 101描述现实的方式。它有助于教你什么类和对象,但这不是全部真相。

类也是静态代码和数据的持有者,它们独立于任何类实例而独立存在。您可以将其视为一种命名空间的全局数据。

在您的示例中,main方法本身就是一个静态方法,可以在没有现有对象的情况下执行,System.out指的是一个独立存在的对象,附加到静态System类中的变量。

答案 1 :(得分:0)

如果在java中只使用静态方法和变量,那么该类的所有对象共享相同的变量和方法,您不必创建对象并调用。 主要方法也是代码运行的入口点

答案 2 :(得分:0)

您确实在java中创建对象。 static关键字显示变量,方法或嵌套类属于类/超类,而不属于对象。 main方法声明为static,因此可以在运行时访问它;它不是一个对象的一部分,它是该类的一部分。 JVM在运行时查找main方法。

答案 3 :(得分:0)

  • 公开表示可以从任何类静态访问

  • 静态意味着您不必创建对象或其他词语不需要 new以及您所询问的内容

  • 表示不会返回值