상속
상속은 코드 중복을 제거하여 클래스를 간결한게 구현할 수 있게 한다.
상속의 장점
□ 클래스의 간결화 - 멤버의 중복 작성 불필요
□ 클래스 관리 용이 - 클래스들의 계층적 분류
□ 소프트웨어의 생산성 향상 - 클래스 재사용과 확장 용이
자바 상속의 특징
- 자바에서는 다중상속을 지원하지 않는다.
- 자바에서는 상속의 횟수에 제한을 두지 않는다.
- 자바에서 계층 구조의 최상위에 java.lang.Object 클래스가 있다.
자바 상속 선언
자바에서는 부모 클래스를 슈퍼클래스 (super class), 상속받는 자식 클래스를 서브클래스(sub class)라고 부르며,
상속을 선언할 때 확장한다는 뜻을 가진 extends 키워드를 사용한다.
public class Person{ //슈퍼 클래스(부모 클래스) .... } public class Student extends Person{ //서브 클래스(자식 클래스) .... } public class StudentWorker extends Student{//StudentWorker 가 Student를 상속받으면 person 클래스의 멤버도 자동 상속받는다. .... } |
슈퍼 클래스에 대한 접근 지정
슈퍼 클래스의 private멤버 - 다른 어떤 클래스에도 접근할 수 없다. 오직 현재 클래스의 멤버들 에게만 접근 허용한다.
슈퍼 클래스의 디폴트 멤버 - 패키지에 있는 모든 클래스가 접근 가능하다. 다른 패키지는 X
슈퍼 클래스의 public 멤버 - 같은 패키지에 있든 다른 패키지에 있든 모든 클래스에 접근 가능하다.
슈퍼 클래스의 protected 멤버 - 같은 패키지에 속한 모든 클래스들
- 같은 패키지(private X)든 다른 패키지(private, 디폴트 X)든 상속받는 서브 클래스
'프로그래밍 > JAVA' 카테고리의 다른 글
[JAVA] final (1) | 2018.08.20 |
---|---|
[JAVA] String 타입 (8) | 2018.08.20 |
[JAVA]this 레퍼런스 (2) | 2018.08.17 |
[JAVA]접근 지정자를 알아보자! (2) | 2018.08.17 |
[JAVA] 객체 지향의 4가지 특징을 알아보자! (10) | 2018.08.16 |