2009-06-14 2 views

답변

4

문자 그대로 그것을 복용, 그것은 클래스 JSomething 유형 JSomething이다 somethingelse라는 필드가 있다고 할 수있다 :이 경우

class JSomething { 
    JSomething somethingelse; 
} 

을의 JSomething 내부라는 JSomethingsomethingelse에 대한 참조가 될 수 있습니다 다음 얻을 : 그러나

JSomething something = new JSomething().somethingelse; 

, 나는 이것이라는 design pattern의 일환으로 볼 것으로 의심- 메서드 호출이 동일한 유형의 인스턴스를 반환합니다.

예를 들어 StringBuilder.append 메서드를 사용하면 StringBuilder을 반환합니다. 따라서 다음을 수행 할 수 있습니다.

StringBuilder sb = new StringBuilder("Hello").append("World!"); 
2

새로운 JSomething(). somethingelse는 필드 액세스에 불과합니다. 어쩌면 JSomething.somethingelse의 잘못 작성된 정적 액세스 일 수 있습니다. 예 : Color color = Color.black; 대신 Color color = new Color(0).black;

0

somethingelse은 JSomething 내에 포함 된 JSomething의 인스턴스가됩니다.