Why out variable in System class is “static”?
为什么Java中的Java.LAN包"static"的系统类中的"OUT"变量?我知道系统是静态类,printstream类中的println()不是静态方法。这两者之间有什么关系?
- 它是静态的,所以您不需要实例化系统来调用它。你能想象在你想要使用System.out.print(ln)()的每个类中都必须创建一个System实例的恐惧吗?
- System是一个类。因此,如果您想直接访问System.out,它需要是一个静态字段。
- 一个非静态的例子是这样的——"system sys=new system();sys.out.println"("这很令人沮丧");
- 谢谢您。我最近几天有这种愚蠢的怀疑。我只是面向OOP概念的初学者,Java 4天就开始了。感谢您抽出时间回答这个疑问。
这是因为静态变量可以在不实例化类的情况下使用。所以,像打印这样简单的东西,你使用out,大多数情况下你不需要创建System类的实例,只需要类名就可以访问变量。