PointTest 클래스가 갖고 있는 draw 함수를 상위 클래스인 P… | [멀티미디어콘텐츠제작전문가 필기] 15년 2회차 기출문제 상세 페이지
1[멀티미디어콘텐츠제작전문가 필기] 15년 2회차
PointTest 클래스가 갖고 있는 draw 함수를 상위 클래스인 Point1D와 Point2D에서 재 정의하여 서로 다른 기능을 수행하도록 하는 객체지향의 특징은?
1
추상화
2
캡슐화
3
다형성
4
정보은닉
해설
같은 이름의 draw( ) 함수가 클래스마다 다른 동작을 하도록 재정의되는 성질은 다형성(polymorphism)이다.
그림은 위쪽의 PointTest draw( ) 상자로 아래쪽 Point1D draw( )·Point2D draw( ) 상자가 각각 화살표로 이어진 상속 구조를 보여 준다. 이름과 형태가 같은 draw( ) 호출이 어떤 클래스의 객체냐에 따라 1차원 점 그리기, 2차원 점 그리기로 서로 다르게 실행되는 것이 오버라이딩(재정의)에 의한 다형성이다.
- 추상화는 공통 속성만 뽑아 개념을 단순하게 만드는 것이고, 캡슐화는 데이터와 그 데이터를 다루는 메서드를 하나로 묶는 것이다.
- 정보은닉은 내부 구현을 외부에서 직접 접근하지 못하도록 감추는 것으로, 같은 이름의 함수를 다시 정의하는 것과는 다른 개념이다.
내용에 오류가 있거나 최신 법령·기준과 다른 부분이 보이면 알려주세요. 확인 후 반영하겠습니다.
