생성자에서 오버라이드된 메소드를 호출
아래의 클래스가 있다고 했을 때
Class 하위클래스
{ int i=0;
//생성자 하위클래스() { i =
10; }
void display() { System.out.println(“i = “ +
i); } }
class 슈퍼클래스 { //생성자 슈퍼클래스()
{ display(); }
Void display() {
System.out.println(“여긴 상위 클래스…”); } }
하위클래스의 인스컨스를 NEW 하는 시점에
어떤 결과가 나오는 지를 추측해 보면… 위 클래스에서 상위클래스에서 display()란 메소드를 호출하는데 이 메소드는 하위 클래스에서
재정의(override)한 메소드 인 것을 확인 할 수 있는데 자바에서는 오버라이드된 하위클래스의 display() 메소드가
실행됩니다.
new 하위클래스()를 실행하게 되면 하위클래스의 생성자를 실행하기 전에 상위클래스의 생성자가 실행되므로 결과적으로
하위쿨래스의 display() 함수가 실행되어 “i = 0”으로 나타날 겁니다.
참고로 C++이라면 이 같은 경우 비록
Override 된다고 하더라도 슈퍼클래스의 display()가
호출됩니다.
|
오라클자바커뮤니티 실무 추천강좌 - 개인80% 환급
 |
스프링3.X게시판&오라클힌트,SQL튜닝,사례연구
|
총 |
4일 |
32시간 |
|
09-03 |
Spring3.X, MyBatis,
Hibernate실무과정 |
총 |
5일 |
35시간 |
|
09-06 |
[기업특강]JAVA,JSP,AJAX,jQUERY
|
총 |
5일 |
40시간 |
|
09-09 |
 |
JAVA,JSP 초보에서
실무까지 |
총 |
18일 |
56시간 |
|
09-05 |
자바초보에서안드로이드까지
|
총 |
18일 |
54시간 |
|
09-06 |
JAVA&WEB프레임워크실무과정
|
총 |
33일 |
99시간 |
|
09-06 |
Spring3.X, MyBatis,
Hibernate실무과정 |
총 |
12일 |
36시간 |
|
09-06 |
스프링3.X게시판&오라클힌트,SQL튜닝,사례연구
|
총 |
11일 |
33시간 |
|
09-09 |
 |
자바초보에서안드로이드까지
|
총 |
8일 |
56시간 |
|
09-07 |
MiPlatform, XPlatform
실무강좌 |
총 |
5일 |
35시간 |
|
09-07 |
Spring3.X, MyBatis,
Hibernate실무과정 |
총 |
5일 |
35시간 |
|
09-07 |
스프링3.X게시판&오라클힌트,SQL튜닝,사례연구
|
총 |
4일 |
32시간 |
|
09-07 |
JAVA&WEB프레임워크실무과정 |
총 |
14일 |
98시간 |
|
09-14
|
 |
스프링3.X게시판&오라클힌트,SQL튜닝,사례연구
|
총 |
4일 |
32시간 |
|
09-03 |
SQL초보에서실전전문가까지
|
총 |
8일 |
56시간 |
|
09-05 |
PL/SQL,오라클힌트,SQL튜닝,사례연구
|
총 |
4일 |
32시간 |
|
09-09 |
 |
PL/SQL,오라클힌트,SQL튜닝,사례연구
|
총 |
10일 |
30시간 |
|
09-05 |
SQL초보에서실전전문가까지
|
총 |
18일 |
54시간 |
|
09-06 |
스프링3.X게시판&오라클힌트,SQL튜닝,사례연구
|
총 |
11일 |
33시간 |
|
09-09 |
오라클 마스터 |
총 |
18일 |
54시간 |
|
09-12 |
 |
SQL초보에서실전전문가까지
|
총 |
8일 |
56시간 |
|
09-07 |
스프링3.X게시판&오라클힌트,SQL튜닝,사례연구
|
총 |
4일 |
32시간 |
|
09-07 |
PL/SQL,오라클힌트,SQL튜닝,사례연구
|
총 |
4일 |
32시간 |
|
09-07 |
오라클 마스터 |
총 |
8일 |
56시간 |
|
09-14 |
|
댓글 없음:
댓글 쓰기