【发布时间】:2012-08-17 08:15:51
【问题描述】:
我一直在寻找 Java 中 System.out.println() 中 System、out 和 println 的答案。我搜索并找到了一个不同的答案,如下所示:
System 是 java.lang 包中的一个内置类。 这个类有一个final修饰符,这意味着它不能被其他类继承。 它包含预定义的方法和字段,提供标准输入、输出等功能。
out 是 System 类中的静态 final 字段(即变量),属于 PrintStream 类型(内置类,包含打印不同数据值的方法)。 静态字段和方法必须使用类名来访问,所以( System.out )。
这里的out表示类型PrintStream类的引用变量。
println() 是 PrintStream 类中用于打印数据值的公共方法。 因此要访问 PrintStream 类中的方法,我们使用 out.println() (因为非静态方法和字段只能通过使用 refrence 变量来访问)
在另一个页面中,我发现另一个对比定义为
System.out.print 是 java 中使用的标准输出函数。其中 System 指定包名,out 指定类名,print 是该类中的函数。
我对这些感到困惑。谁能告诉我它们是什么?
【问题讨论】:
-
我觉得第一个解释比较清楚一些,你可以随时浏览源代码自己看,例如
public final static PrintStream out = nullPrintStream(); -
第二个解释是完全错误的。
-
@Less 第二个解释是错误的,因为
System是一个类,而不是一个包,而out是一个字段,而不是一个类。 -
我同意你们两个,将关闭标记为第一个问题的欺骗。
标签: java system.out