
상속이란?
부모 클래스를 상속받은 자식 클래스는 부모 클래스의 속성과 기능을 이용할 수 있다.
구조도를 그릴 경우, 자식클래스가 부모 클래스를 가리키는 형태로 표기된다.

public class ParentClass {
public ParentClass() {
}
public void parentFun() {
System.out.println("parentfun");
}
}
public class ChildClass extends ParentClass {
public ChildClass() {
}
public void childFUn() {
System.out.println("childFun");
}
}
위와 같이 extends 를 활용하여 ChildClass에 ParentClass를 상속한다.
그러면 아래와 같이 ChildClass 객체를 생성하면, 부모 클래스 메소드이 parentFun() 메소드도 사용이 가능하다.
주의할 점은, 만약 부모 클래스에서 속성과 메소드가 private으로 설정되어 있다면, ChildClass로 형성된 객체에서는 이를 사용할 수 없다.
ChildClass child = new ChildClass();
child.parentFun();
child.childFun();
상속을 잘 활용하면 좋은 코드를 짜는 데에 도움이 된다.
좋은 코드란 유지보수가 쉬운 코드를 말한다. 여기서 유지 보수가 쉽다는 말은, 기능 변경이 필요할 때 최소한의 코드를 바꿈으로서 기능 변경을 이루어 내는 코드를 말한다. 예를 들어, parentFun() 메소드의 출력값을 바꾸어야 할 때 parentFun()의 기능이 필요한 두 클래스 (Parent Class와 Child Class) 전부의 메소드를 고칠 필요 없이 ParentClass의 메소드 출력값만 고치면 된다.
또한 유지보수 뿐만 아니라 코드를 새롭게 짤 때 시간 단축 면에서도 도움이 된다. 자식 클래스의 멤버 변수와 클래스를 일일히 구현할 필요 없이 부모 클래스를 상속받아 사용하면 빠르게 코드를 완성할 수 있다. 1차적으로 코드가 짧아진다는 것이 가장 큰 장점이다. 부모 클래스의 멤버 변수와 메소드를 "재사용"해 빠르게 코드를 완성 시켜 효율성을 달성하기 때문이다. 또한, 부모 클래스 상속 시 자식 클래스에서는 부모 클래스에 없는 기능들만을 구상해 만들면 되기 때문에 "확장성"이 용이해진다.
본 내용은 인프런의 자바 프로그래밍 입문 강좌 일부를 참고하였습니다. www.inflearn.com/course/%EC%8B%A4%EC%A0%84-%EC%9E%90%EB%B0%94_java-renew/dashboard
'Programming Language > Java' 카테고리의 다른 글
| [Java] 클래스(Class) 구현하기 - 멤버변수, 생성자, 메서드, this (0) | 2021.03.28 |
|---|