System.out.println("121");
这个方法是System类里的out对象的println方法的意思吗?可不可以用import导入包含System这样的包
从而直接用,像c一样直接用打印语句,还是说Java的打印语句就是这样的?
其实System是java.lang里面的一个类,而out就是System里面的一个静态数据成员,而且这个成员是java.io.PrintStream类的引用。
如下图,
被关键字static修饰的成员可以直接通过"类名.成员名"来引用,而无需创建类的实例。所以System.out是调用了System类的静态数据成员out。
println()就是java.io.PrintStream类里的一个方法,它的作用是向控制台输出信息。因为System.out是java.io.PrintStream类的实例的引用,所以可以通过 System.out.println(); 来调用此方法。
这是JAVA中的标准输出方式,同C语言中的printf函数是一样的,是一种固定写法。
打印方法这个最直接,最常用跟c语言的printf一样
这是lang包里的方法,在java里只有lang包里的方法不需要导包,所以可以直接用,其他除lang包里的方法都需要导包
我看了下源码,out是System类中的静态属性:public final static PrintStream out = null;它是一个打印流,打印流继承 FilterOutputStream;FilterOutputStream又继承OuputStream。但是直接 PrintStream ps = null;
ps.println("123");
又不行,这个地方肯定创建了 PrintStream的对象,具体用的什么构造方法还没弄清楚。
一般来说你要打印就直接System.out.println("121");,或者自己封装个方法?感觉没啥必要。反正各种开发工具也有相应的快捷键来直接输入,如idea要在控制台输出“123”,可以直接这样输入:“123”.sout + tab
应该可以
import static System.out.*;
public static void print(String msg){
System.out.print(msg);
}