자격증/OCJP_ExamA

QUESTION 57

IT grow. 2018. 7. 8. 21:38
반응형

QUESTION 57 


Given: class Foo 

{     

public int a = 3;     

public void addFive() 

{ a += 5; System.out.print("f "); } }

class Bar extends Foo {    

 public int a = 8;     

 public void addFive() { 

this.a += 5; System.out.print("b " );

 } 


Invoked with: 

 

Foo f = new Bar(); 

f.addFive(); 

System.out.println(f.a); 

 

What is the result? 

 

A. b 3 

B. b 8 

C. b 13 

D. f 3 

E. f 8 

F. f 13 

G. Compilation fails. 

H. An exception is thrown at runtime. 


Solution : A 


plus imformation : 


상위 클래스 Foo f 를 하위 클래스 Bar 의 생성자로 호출


하위 클래스 Bar의 오버라이딩된 addFieve()가 실행 --> a 변수에 +5 = 13 


but 매개변수는 오버라이딩 되지 않는다 . 

반응형