Chap8 상속

김지용·2022년 12월 30일
0

상속

상속이란(inheritance)?

  • 클래스와 클래스 간의 상속관계

  • 부모 클래스가 가지는 멤버(필드,메소드(속성,기능))를자식 클래스가 물려받아 자신의 멤버인것처럼 사용할수 있도록 하는기술

  • 멤버 외에 타입 또한 상속 가능 (다향성)

  • 자바는 단일상속(하나의 클래스만을 부모클래스로 가짐)만 지원

A라는 부모와 B라는부모가 있는데 C가 두개다 부모클래스를 가진다고 한다면 모호성이 발생해 하나밖에 안됨

상속하는 방법
public class 클래스명 extends 부모명(클래스명)
public class Academy extends Company{}

장단점

부모가 여러 자식들을 만들수 있고 각각의 자식들 데이터를 부모를 통해 한번에 불러들일수 있다.

  • 다향성★★★★★ 이게 제일 큼

IS-A

  • 자식 클래스는 (하나의)부모 클래스이다 의 관계로 부모클래스스의 멤버들을 자식클래스가 상속받음

Circle is a Shape -> Circle클레스는 하나의 shape클래스이다.

override

만약 없이 product를 이용한 호출을하면 메소드 명이 틀려도 오류난지 안알려준다.

@Override
//메소드 이름이 다르면 에러가 발생하는지 안하는지 알려주는 기능 만약 없으면 틀렸는지 맞았는지 모름

상속과 오버라이딩 예시

1 Application

2 car

3 FireCar

4 RacingCar

super super() 키워드

  • super은 부모클래스의 인스턴스 주소를 보관하는 레퍼런스 변수

  • super()은 부모 생성자를 호출하는 구문으로 매개변수 타입,개수가 일치하는 부모의생성자를 호출하는것

부모 클래스가 가지는 private 생성자를 제외한 나머지 생성자 호출

1 Application

Computer

product

오버라이딩


1

2

0개의 댓글