안녕하세요. J4J입니다.
이번 포스팅은 객체지향 프로그래밍의 특징 중 하나인 상속화에 대해 적어보는 시간을 가져보려고 합니다.
상속화란?
자바에서 상속화라고 하는 것은 부모 클래스에 정의된 변수 및 메서드 들을 자식 클래스에서 상속받아 사용할 수 있게 되는 것을 말합니다.
일상 속에서 부모의 재산을 그대로 상속받는다는 것과 유사한 개념이라고 생각하시면 됩니다.
상속화를 사용하는 이유는 무엇일까요?
그 이유는 코드의 재사용성을 극대화시키기 위해서입니다.
상속화를 사용한다면 부모 클래스에서 정의한 변수 및 메서드들을 여러 자식 클래스에서도 사용할 수 있기 때문에 재사용성이 증가하게 되고 더불어 자식 클래스에서는 동일한 코드들을 다시 작성할 필요가 없기 때문에 코드가 간결해지게 됩니다.
또한 사용 중인 메서드의 로직이 변경될 때 한 메서드만 변경하게 되면 다른 자식 클래스에도 모두 동일하게 적용되기 때문에 코드 관리도 용이해집니다.
사용 방법
자바에서 상속화의 사용은 extends라는 키워드를 이용하여 사용됩니다.
코드로 예시를 들어보겠습니다.
package oop;
public class Parents {
String firstName = "진";
public void myHouse () {
System.out.println("서울 100평 아파트");
}
public void myMoney () {
System.out.println("1324조 소유 중");
}
}
package oop;
public class Child extends Parents { // extends를 통해 상속받음
public static void main(String[] args) {
Child child = new Child();
System.out.println(child.firstName); // 진
child.myHouse(); // 서울 100평 아파트
child.myMoney(); // 1324조 소유 중
}
}
위의 코드처럼 부모가 소유하고 있는 변수와 메서드들을 사용하기 위해 extends를 통해 상속받고 자식 클래스에서 따로 정의하는 것 없이 부모 클래스에 정의되어 있는 것을 그대로 사용할 수 있습니다.
여기서 한 가지 더 아셔야 될 점은 상속을 받을 수 있도록 도와주는 것은 extends뿐만 아니라 implements라는 키워드를 이용해서도 상속을 받을 수가 있습니다.
만약 extends와 implements의 차이를 모르신다면 이 글을 다 읽으시고 [Java] 자바기초 - 추상클래스와 인터페이스(abstract/interface)로 바로 방문해주시면 됩니다.
정리
이상으로 객체지향 프로그래밍의 특징 중 하나인 상속화에 대해 간단하게 알아보는 시간이었습니다.
읽어주셔서 감사합니다.
'Language > Java' 카테고리의 다른 글
[Java] 자바기초 - 제네릭(Generic) (0) | 2020.12.28 |
---|---|
[Java] 자바기초 - 객체지향(OOP) - 다형성(Polymorphism) (0) | 2020.12.27 |
[Java] 자바기초 - 객체지향(OOP) - 추상화(Abstraction) (0) | 2020.12.23 |
[Java] 자바기초 - 객체지향(OOP) - 캡슐화(Encapsulation) (0) | 2020.12.22 |
[Java] 자바기초 - 오버라이딩과 오버로딩(overriding/overloading) (0) | 2020.12.21 |
댓글