2014-01-24 6 views
0

getNextNode()에서 클래스의 참조 변수를 반환합니다. 그 의미는 무엇입니까 ???클래스의 참조 변수 반환

class Node1{ 
    private String data; 
    private Node1 nextNode; 
    public String getData() { 
     return data; 
    } 

public Node1 getNextNode() { 
     return nextNode; 
    } 
} 
+0

누군가 위의 코드를 설명 할 수 있습니까 ??? – user3094600

+0

단일 LinkedList를 만드는 데 사용할 수있는 DS입니다. –

+0

"클래스의 참조 변수"는 각 언어가 개별적으로 표시 되더라도 Java 언어 사양에는 표시되지 않습니다. 그 단어들에 대한 정의를 원한다면 대신 그 단어를 물어보십시오. –

답변

1

코드 :

class Node1{ 
    private String data; 
    private Node1 nextNode; 
    public String getData() { 
     return data; 
    } 

public Node1 getNextNode() { 
     return nextNode; 
    } 
} 

당신은 노드 1라는 개체가 있습니다.

Node1 n1 = new Node1(); 

을 호출하여 새 Node1 객체를 만들 수 있습니다. 이는 n1에 사용자가 설정 한 모든 비공개 필드가 있음을 의미합니다.

n1에는이 클래스에서만 액세스 할 수있는 Node1 필드 nextNode이 있습니다. 다른 클래스는이 필드를 수정하거나 검색 할 수 없습니다.

외부 클래스가이 nextNode 필드를 검색하려면 getNextNode() 게터 메소드 getNextNode()을 가져와 해당 클래스를 해당 개인 nextNode 필드의 복사본이라고합니다.

OOP의 이점입니다.

+0

만약 내가 새로운 값을 저장할 클래스의 인스턴스를 하나 더 만들고자한다면 위의 메소드를 어떻게 사용해야합니까? – user3094600

+0

그 메소드는 private 필드의 값을 설정하지 않습니다. setter 메소드가 필요합니다 : public void setData (문자열 str) { this.Data = str; } – SeekingAlpha

+0

다른 질문에 내 사고 코드가 잘못 표시되었습니다. – user3094600

0

위의 메소드 getNextNode에서 Node1 유형의 오브젝트를 가리키는 '참조'를 리턴합니다.

1
Node1 node = node1.getNextNode(); 

여기 nodeNode1 객체를 가리키는 것이다 nextNode의 기준 값을 복사한다.

+0

사실 저는 링크드리스트 구현을 원했습니다. 이 ,,,, 한 노드에 데이터를 삽입 ,,,,하지만 다음 데이터를 forstoring tothe 같은 클래스를해야합니다 ,,,, 클래스의 다른 인스턴스와 함께, 할 수있는 사용하여 ??? – user3094600

1

getNextNode()에서 클래스의 참조 변수를 반환하는 것은 무엇을 의미합니까 ???

즉, getNextNode() 메서드의 호출자는 동일한 Node1 (nextNode) 객체를 참조합니다. 호출자가 반환 한 값을 변경하면 Node1의 현재 인스턴스에 직접 반영됩니다.