상속 

 

상속은 코드 중복을 제거하여 클래스를 간결한게 구현할 수 있게 한다.


상속의 장점

 

□ 클래스의 간결화 - 멤버의 중복 작성 불필요

클래스 관리 용이 - 클래스들의 계층적 분류

소프트웨어의 생산성 향상 - 클래스 재사용과 확장 용이


자바 상속의 특징

 

- 자바에서는 다중상속을 지원하지 않는다.

- 자바에서는 상속의 횟수에 제한을 두지 않는다.

- 자바에서 계층 구조의 최상위에 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

+ Recent posts