자바 class에서 사용되는 상속의 개념에 대해 이해해보자 !
개념부터 제대로 알고 사용하자는 의미에서 ... zz
상속이란,
기존의 클래스를 재사용하여 새로운 클래스를 작성하는 것.
상속을 통해서 클래스를 작성하면 적은 양의 코드로 새로운 클래스를 작성할 수 있고, 코드를 공통적으로 관리할 수 있기 때문에
코드의 추가 및 변경이 매우 편리해져서 생산적인 코딩을 할 수 있게 된다 !
상속 구현 방법을 보자 !
새로 작성하고자 하는 클래스의 이름 뒤에 상속받고자 하는 클래스의 이름을 'extends'와 함께 써주면 된다.
class Child extends Parent {
// to do
}
여기서 상속받는다는 것은 Parent 클래스를 확장(extend)한다는 의미로 해석한당 -!!
자바 class를 사용하면서 상속의 개념에 대해 제대로 알지 않고 사용해서 헷갈렸는데
다음과 같이 비교해보면 이해가 좀 더 잘 될 것이다.
상속관계 : '~은 ~이다.(is-a)'
포함관계 : '~은 ~을 가지고 있다.(has-a)'
음... 상속개념과 포함개념이 은근 헷갈리니 직접 예시를 들어보자 !
class Car {
Wheel w = new Wheel();
}
class Sonata extends Car {
//to do
}
상속, 포함 관계를 따져보자.
: Sonata는 Car이다 (is-a) - 상속관계
: Car는 Wheel을 가지고 있다.(has-a) - 포함관계
추가적으로 알아둬야하는 점이 JAVA 상속은 단일 상속만 가능하다는 것이다 ! 물론 다중 상속을 하면 좋겠지만,,,,
클래스간의 관계가 매우 복잡해지고, 서로 다른 클래스로부터 상속받은 멤버간의 이름이 같은 경우 구별할 수 있는 방법이 없다는 단점이 발생한다 ! 기억해두자 !!!
상속, 이젠 알고 사용하자 ! 3 :-)
'BE > JAVA' 카테고리의 다른 글
[JAVA] 문자열 치환(Replace)하기 (0) | 2020.10.19 |
---|---|
[JAVA] jdk 1.8 다운로드 및 설치 _ 최신 홈페이지 버전 (0) | 2020.08.30 |
[JAVA] Launch4j 사용하여 jar파일 exe파일로 만드는 방법 (0) | 2020.08.24 |
[JAVA] java.lang.NullPointerException 오류 발생 해결하기 (2) | 2020.08.14 |
[JavaFX] javafx 텍스트, 배경 색상 바꾸기 - 폰트 설정 (0) | 2020.08.14 |
댓글