2017년 5월 21일 일요일

상속시 호출되는 메소드와 변수

상속시 호출되는 메소드와 변수

* 메소드를 오버라이딩 했을 경우
: 상위 클래스에서 메소드를 호출하더라도 최종 오버라이딩 된 메소드가 호출된다.
* static 메소드를 오버라이딩 했을 경우
: 상위, 하위 클래스에 관계없이 현재 호출하는 클래스 내의 메소드를 호출한다.
* 상위에서 private 로 선언된 메소드를 하위에서 동일이름의 메소드로 선언시
: private 로 선언된 메소드는 상속되지 않으므로 상위 클래스에서 호출하면 상위의 메소드를, 하위 클래스에서 호출하면 하위의 메소드를 실행한다.
* 하위 클래스에서 같은 이름의 변수를 재정의 할 경우
: 각 해당 클래스의 변수값을 사용하게된다. 하위에 정의된 변수가 없다면 상위를 찾아간다
* 인터페이스를 구현하는 경우의 변수호출
: 현재 클래스안에서는 현재클래스 객체를 생성하지 않고도 상위 인터페이스의 변수를 호출 가능.