[Java] 상속

이지현·2022년 12월 24일
0

Java

목록 보기
7/46
post-thumbnail

✔️ 상속

1. 상속이란 : 기존 클래스(부모 클래스, 상위 클래스, 슈퍼 클래스)를 재사용하여 새로운 클래스(자식 클래스, 하위 클래스, 서브 클래스)를 작성하는 것

2. 특징

  1. 자식 클래스는 부모 클래스의 모든 멤버 필드와 메소드를 새롭게 정의하지 않아도 사용 가능
  2. 자식 클래스는 하나의 부모 클래스만 상속 가능(extends 키워드 사용)
  3. 연속적인 상속 가능(클래스 A -> 클래스 B -> 클래스 C -> 클래스 D)

3. 다중상속이 불가능 한 이유 : 한 클래스가 A와 B를 모두 상속받는다 가정하였을 때, 어떤 부모의 메소드를 사용해야될지 몰라 충돌이 발생함

<대체 방법>
interface를 사용하여 다중상속을 대체할 수 있음. 인터페이스는 일종의 추상 클래스로 메소드는 구현할 수 있지만 기능은 구현되지 않음

4. 업캐스팅 : 자식 클래스 객체를 부모 클래스 타입으로 변환

<예시>

// 부모 클래스 Person, 자식 클래스 Student
Person p = new Person();
Student s = new Student();
p = s;

5. 다운캐스팅 : 부모 클래스 객체를 자식 클래스 타입으로 변환

<예시>

// 부모 클래스 Person, 자식 클래스 Student
Person p = new Person();
Student s = new Student();
s = (Student)p;

6. super() : 부모의 기본 생성자 호출

profile
2023.09 ~ 티스토리 이전 / 2024.04 ~ 깃허브 블로그 이전

0개의 댓글