Backend/Java
[Java] 상속
서교동김계란
2024. 5. 9. 18:36
728x90
🎯 상속

1. 상속의 정의와 장점
상속이란, 기존 클래스를 재사용하여 새로운 클래스를 작성하는 것이다.
- 상속을 통해서 클래스를 작성하면 보다 적은 양의 코드로 새로운 클래스 생성 가능
- 코드의 재사용성 높임
- 코드의 중복 제거로 프로그램의 생산성과 유지보수에 크게 기여
상속을 구현하는 방법은 아주 간단하다. 새로 작성하고자 하는 클래스의 이름 뒤에 상속받고자 하는 클래스의
이름을 키워드 'extends'와 함께 써 주기만 하면 된다.
class Child extends Parent{
/// ...
}
Parent를 상속받은 Child클래스이다.
보통 상속해주는 클래스를 부모클래스, 상속받는 클래스를 자식클래스 라고 한다.

1.2 상속 예제
class Tv {
boolean power; // 전원상태(on/off)
int channel; // 채널
void power() { power = !power; }
void channelUp() { ++channel; }
void channelDown() { --channel; }
}
class CaptionTv extends Tv{
boolean caption; // 캡션상태(on/off)
void displayCaption(String text) {
if (caption) { // 캡션 상태가 on(true( 일 때만 text를 보여준다.
System.out.println(text);
}
}
}
public class Test {
public static void main(String[] args) {
CaptionTv ctv = new CaptionTv();
ctv.channel = 10; // 조상 클래스로부터 상속받은 멤버
ctv.channelUp(); // 조상 클래스로부터 상속받은 멤버
System.out.println(ctv.channel);
ctv.displayCaption("Hello World");
ctv.caption = true; // 캡션(자막)기능을 켠다.
ctv.displayCaption("Hello World");
}
}
출력: 11
Hello World
자손 클래스의 인스턴스를 생성하면 조상 클래스의 멤버와 자손 클래스의 멤버가 합쳐진 하나의 인스턴스로 생성된다.