繁体   English   中英

为什么不必用Java创建对象?

[英]Why do you not have to create an object in Java?

我正在学习Java,令我惊讶的事情之一是您没有从类中创建对象。 例如:

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

我不明白的是,我一直认为类是对象的蓝图,而在这里您没有创建对象,程序只是从类中运行。 是否创建了从隐式运行main方法的对象? 我并没有很好地表达这句话,并假设我缺少某种理解-有人可以解释吗?

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

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

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

如果在Java中仅使用静态方法和变量,则该类的所有对象都共享相同的变量和方法,则不必创建对象并调用。 同样,主要方法是代码运行的入口点

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

  • 公共意味着可以从任何静态类访问

  • 静态意味着你不必创建对象或其他文字没有需要的new和你要求什么

  • 表示它不会返回值

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM