상속(inheritance)

roglog·2021년 6월 26일
0

java의 정석

목록 보기
16/36

1. 상속의 정의와 장점


  • 정의: 기존의 클래스를 재사용하여 새로운 클래스를 작성하는 것
  • 장점: 재사용성을 높이고 코드의 중복을 제거하여 프로그램의 생산성과 유지보수에 기여
  • 구현 방법: 클래스의 이름 뒤에 상속받고자 하는 클래스의 이름을 키워드 'extends'와 함께 써준다.
    Ex)
	class Child extends Parent { }
  • 조상클래스와 자손 클래스
    • 생성자와 초기화 블럭은 상속되지 않는다. 멤버만 상속된다.
    • 자손 클래스의 멤버 개수는 조상 클래스보다 항상 같거나 많다.
    • 조상 클래스가 변경되면 자손 클래스는 자동적으로 영향을 받게 된다.
      (자손 클래스가 변경되는 것은 조상 클래스에 영향 없음)
    • 자손 클래스의 인스턴스를 생성하면 조상 클래스의 멤버도 함께 생성되기 때문에 따로 조상 클래스의 인스턴스를 생성하지 않고도 조상 클래스의 멤버들 사용 가능

2. 클래스간의 관계 - 포함관계


  • 포함(Composite)관계
    한 클래스의 멤버변수로 다른 클래스 타입의 참조변수를 선언하는 것

3. 클래스간의 관계 결정하기


  • 상속관계: '~은 ~이다.(is-a)'
  • 포함관계: '~은 ~을 가지고 있다.(has-a)'

4. 단일 상속


  • java는 단일 상속만을 허용함
  • 둘 이상의 클래스는 상속 받지 못함

5. Object클래스 - 모든 클래스의 조상


  • Object클래스는 모든 클래스 상속계층도의 최상위에 있는 조상클래스
  • 다른 클래스로부터 상속 받지 않는 모든 클래스들은 자동적으로 Object클래스로부터 상속받게 함
    (코드를 컴파일 하면 컴파일러는 자동적으로 'extends Object'를 추가)

java의 정석 chapter7

profile
Full Stack Developer 📚

0개의 댓글