2013-10-22 127 views
3

我想知道什么是System.out.println()。我读了这两篇文章 What is System, out, println in System.out.println() in JavaWhat's the meaning of System.out.println in Java?。我知道什么是系统,输出和打印,但我不知道系统类如何连接到PrintStream class。他们怎么样related to each other什么是系统类和PrintStream类之间的关系

系统是java.lang package.out中的一个类,它是System类的静态成员,那么它如何成为java.io.PrintStream的实例?System和PrintStream如何相互关联?

+3

'System'类具有'PrintStream'类型的字段。请参阅此处的“字段摘要”:http://docs.oracle.com/javase/7/docs/api/java/lang/System.html。 –

回答

0

System类具有在System类声明为outPrintStream类的静态对象和println()PrintStream类的方法。

所以我们可以访问静态对象System.outprintln()PrintStream类的方法。这就是为什么我们可以写System.out.println()以及这两个类是如何相关的。

2

System类和PrintStream类之间的关系是HAS-A关系。 这里系统类HAS-A PrintStream类。 了解关系了解程序。

class A 
{  
    void display() 
    { 
     System.out.pritln("this is display method"); 
    } 

} 

class B 

{ 
    static A ob=new A(); 
} 

class demo 
{ 
    public static void main() 
    { 
    B.ob.display(); 
    } 
} 

它打印这是显示方法。

B.ob.display()就像System.out.println()。

一个对象在B类中创建。

PrintStream类对象是在System类中创建的。

ob是A类的静态对象引用。

out也是PrintStream类的静态引用。