부모 클래스의 서브 클래스 상속은 속성과 방법을 포함하여 유형의 상속이라는 것을 모두 알고 있습니다! 서브 클래스와 상위 클래스의 서명이 동일한 서명을 갖는 경우 이어체라고합니다! 서브 클래스와 상위 클래스의 속성이 동일하면 부모 클래스는 자체 속성을 숨 깁니다!
그러나 부모 클래스와 하위 클래스가 작성한 참조를 사용하여 아동 클래스에서 만든 객체를 가리키면 어린이 클래스 객체의 속성 값 또는 방법의 결과는 무엇입니까?
코드보기 :
Public Class FieldDemo {public static void main (String [] args) {Student t = new Student ( "Jack"); Person P = T; // 부모 클래스에 의해 생성 된 참조는 서브 클래스 시스템에 의해 생성 된 객체를 가리 킵니다. System.out.println (t.getName ()+","+p.getName ()); }} 클래스 개인 {문자열 이름; int 연령; public String getName () {return this.name; }} 클래스 학생 확장 사람 {문자열 이름; // 속성과 상위 클래스 속성 이름은 동일하지만 개발 중에 부모 클래스 속성 이름과 동일하지 않습니다! ! 공개 학생 (문자열 이름) {this.name = 이름; super.name = "Rose"; // 부모 클래스에서 속성에 값을 할당} public String getName () {return this.name; }} 반환 결과는 다음과 같습니다.
잭, 로즈
잭, 잭
그 이유는 Java에서 속성은 유형에 묶여 있고 메소드는 객체에 묶여 있습니다!
이 기사는 매우 간단하지만 실제 가치도 있습니다. 모든 사람의 학습에 도움이되기를 바랍니다.