Java 静态成员能否引用/访问类的实例方法?

Java 静态成员能否引用/访问类的实例方法?,java,static,instance,printstream,Java,Static,Instance,Printstream,就我所知,这是不正确的,那个么系统类的变量是如何产生的呢 final static PrintStream out = null; 可以参考System.out.print()中PrintStream类的打印方法 PS:这个问题与Java中System.out.println的含义不同?“静态成员不能引用实例方法”这句话过于简单,会引起混淆 实际的限制是静态方法和静态字段初始值设定项不能在不为调用提供对特定对象的引用的情况下调用实例方法 在使用static System.out的情况下,根本

就我所知,这是不正确的,那个么系统类的变量是如何产生的呢

 final static PrintStream out = null;
可以参考
System.out.print()中PrintStream类的打印方法

PS:这个问题与Java中System.out.println的含义不同?“静态成员不能引用实例方法”这句话过于简单,会引起混淆

实际的限制是静态方法和静态字段初始值设定项不能在不为调用提供对特定对象的引用的情况下调用实例方法

在使用
static System.out
的情况下,根本没有问题,因为
print
直接在
PrintStream
对象上调用,该对象恰好存储为某个其他类的
static
字段,在本例中为
java.lang.System
。两者之间没有区别

System.out.print("hello");


这两个代码段之间没有关系。In System.out.print()或In System.out.println()方法out变量用于指代打印方法您在这里混淆了各种语句和术语。显然,您还不了解System.out.println的含义/does.out是PrintStream的实例,因此它可以使用PrintStream的实例方法。out是System类的静态成员。
System.out.print("hello");
PrintStream myOutput = System.out;
myOutput.print("hello");