상속, 오버라이딩 개념
상속 : 하위 클래스는 상위 클래스의 메소드와 변수들을 정의하지 않고 바로 사용(물려받는 것)
오버라이딩 : 하위 클래스에서 부모 클래스의 메소드를 재정의하는 과정
- 오버라이딩 메소드는 부모 클래스 메소드보다 우선 순위 높음
class SuperObject{
public void paint(){
draw();
}
public void draw(){
draw();
System.out.println("Super Object");
}
}
class SubObject extends SuperObject{
public void paint(){
super.draw();
}
public void draw(){
System.out.println("Sub Object");
}
}
public class Main
{
public static void main(String[] args) {
SuperObject a = new SubObject();
a.paint();
}
}
SuperObject a = new SubObject(); ①
하위 클래스의 생성자로 객체 변수 선언하고 자료형은 상위 클래스로 지정 -> 오버라이딩 하기 위함
a.paint(); ②
paint메소드 호출 -> 오버라이딩 되었으므로 하위클래스의 paint() 수행
public void paint(){
super.draw(); ③
}
상위 클래스의 draw() 수행
public void draw(){
draw(); ④
System.out.println("Super Object"); ⑤
}
④ 오버라이딩 된 메소드이므로 하위 클래스의 draw() 수행 -> Sub Object 출력
⑤ Super Object 출력
'정보처리기사 > 오답' 카테고리의 다른 글
[실기추가문제] - 요구사항 확인 (0) | 2020.10.13 |
---|---|
[실기추가문제] - 데이터 입출력 구현 (0) | 2020.10.12 |
[필기핵심요약문제] - 제품소프트웨어패키징 (0) | 2020.10.10 |
17년 실기 기출 문제 (0) | 2020.10.10 |
[필기핵심요약문제] - 애플리케이션 테스트 관리 (0) | 2020.10.06 |