1. 다음 클래스에 대한 물음에 답하라.
(1) A objA = new objA(); 에 의해 생성되는 객체 objA의 멤버들을 모두 나열하라.
답 : private int a;
public void set(int a) { this.a=a; }
(2) B objB = new objB(): 에 의해 생성되는 객체 objB의 멤버들을 모두 나열하라.
답 : private int a;
public void set(int a) { this.a=a; }
protected int b,c;
(3) C objC = new objC(); 에 의해 생성되는 객체 objC의 멤버들을 모두 나열하라.
답 : private int a;
public void set(int a) { this.a=a; }
protected int b,c;
public int d,e;
(4) 클래스 D를 다음과 같이 작성하였을 때, 오류가 발생하는 라인을 모두 찾아라.
답 : 1번
2. 자바의 모든 클래스가 반드시 상속받게 되어 있는 클래스는?
답 : 1번
3. 상속을 이용하여 다음 클래스들을 간결한 구조로 재작성하라.
4. 다음 중 설명에 적절한 단어를 기입하라.
자바에서 상속받는 클래스를 서브클래스라고 부르며, extends 키워드를 이용하여 상속을 선언한다. 상속받은 클래스에서 상속해준 클래스의 멤버를 접근할 때 super 키워드를 이용한다. 한편, 객체가 어떤 클래스의 타입인지 알아내기 위해서는 instanceof 연산자를 이용하며, 인터페이스는 클래스와 달리 interface 키워드를 이용하여 선언한다. |
5. 상속에 관련된 접근 지정자에 대한 설명이다. 틀린 것은?
답 : 2번, protected 멤버는 다른 패키지에 있는 서브 클래스에서도 접근할 수 있다.
6. 다음 빈칸에 적절한 한 줄의 코드를 삽입하라.
7. 상속에 있어 생성자에 대해 묻는 문제이다. 실행될 때 출력되는 내용은 무엇인가?
답 :
A B : 11 |
8. 다음 코드에서 생성자로 인한 오류를 찾아내어 이유를 설명하고 오류를 수정하라.
답 : protected A(int i) { a=i;} 부분을
public A( ){ } 로 수정하거나
public B() { b =0; } 부분을
public B() { super(0); b=0;} 로 수정한다.
9. 다음 추상 클래스의 선언이나 사용이 잘못된 것을 있는 대로 가려내고 오류를 지적하라.
답 : 2번 ( f함수에 코드가 작성되어 있기 때문에 추상 메소드가 아니여서 추상 클래스가 될 수 없다)
3번 (클래스 C는 추상클래스인 B를 상속받으며 오버라이딩을 하지 않고 있기 때문에 abstract class B extends B로 수정해야한다.)
4번 (클래스 B의 f 함수의 타입은 int형인데 상속받은 클래스C에서는 void 타입이기 때문에 오류가 난다)
10 .추상 클래스를 구현하는 문제이다. 실행 결과와 같이 출력되도록 클래스 B를 완성하라.
11. 다음 상속 관계의 클래스들이 있다.
(1) 다음 중 업캐스팅을 모두 골라라?
답 : 2번, 3번
(2) 다음 코드를 실행한 결과는?
답 : true
false
(3) 다음 코드를 실행한 결과는?
답 : true
true
12. 동적 바인딩에 관한 문제이다. 다음 코드가 있을 때 질문에 답하라.
(1) Circle
(2) draw();
(3) super.draw();
13. 동적 바인딩에 대해 다음에 답하라.
(1) 다음 중 오류가 발생하는 것을 있는 대로 골라라.
답 : 2번
(2) 다음 코드의 실행 결과 "반지름=10" 이 출력되도록 Circle 클래스를 수정하라.
답 :
14. 다형성에 대한 설명 중 틀린 것은?
답 : 4번
15. 다음 중 인터페이스의 특징이 아닌 것은?
답 : 2번
16. 빈칸을 적절히 채우고, 실행 예시와 같이 출력되도록 클래스 TV에 필요한 메소드를 추가 작성하라.
'JAVA > JAVA 문제풀이' 카테고리의 다른 글
명품 자바 프로그래밍 6장 연습문제 (0) | 2023.08.18 |
---|---|
명품 자바 프로그래밍 5장 실습문제 (0) | 2023.08.14 |
명품 자바 프로그래밍 4장 실습문제 (0) | 2023.07.04 |
명품 자바 프로그래밍 4장 이론문제 (0) | 2023.07.04 |
명품 자바 프로그래밍 3장 실습문제 (0) | 2023.06.30 |