728x90
Section 01. 상속
상속 필요성
- 상속 : 기존 클래스 기능 사용 → 새 클래스
- 클래스 간 관계, 구조 조직화, 가독성, 해석 가능성 향상
- 응용 프로그램의 유지,관리
- 코드 재사용
- 자식 클래스는 부모의 모든 멤버 요소 소유 & 추가 가능
class 자식 클래스 extends 부모 클래스 {
// 멤버 요소
}
Is - A 관계(is a relationship)
…는 …이다. → extends, Implements
- 모든 클래스는 java, lang, Object의 하위 클래스
- 상속 관계
Section 02. 상속의 유형
단일 상속 : 하나의 클래스에 의해서만 확장
다단계 상속 : 상속받은 자식 클래스가 또 다른 클래스에 상속
super 부모 클래스 참조
- 부모 클래스의 멤버 요소에 접근 가능한 명령어
- super.name = “SuperCat”;
- super()를 이용한 생성자 접근
- super(); 부모 클래스의 생성자 호출
- 자식 클래스의 생성자 첫 행에 이 명령어 o
Section 03. 다형성
- 필요성
- 상속과 메서드 재정의 활용 → 프로그램 확장
- 부모의 참조 변수로 자식의 객체에 접근 → 코드 효율성
- 상위는 공통 부분 제공, 하위는 각 기능을 구현
Section 04. 다형성의 유형
- 다형성의 유형
- 컴파일타임 다형성 : 정적 다형성 → 연산자 오버로딩, 메서드 오버로딩
- 런타임 다형성 : 동적으로 재정의된 메서드에 대한 호출이 런타임에 해결되는 프로세스 → 메서드 오버라이딩
- 메서드 오버로딩 : 메서드명 같지만 다른 매개변수 사용하는 프로세스
- 공간 효율, 이해 easy → 디버깅 good
- 메서드 오버라이딩 : 상속받은 메서드를 자식에서 특정 형태로 재정의
- 메서드 재정의 : 같은 이름, 인수의 개수, 유형 동일, 같은 반환형
- 코드의 복잡성 ↓, 일관성
728x90
'Programming > JAVA' 카테고리의 다른 글
[JAVA] 10. 패키지 (1) | 2023.10.23 |
---|---|
[JAVA] 9. 추상클래스와 인터페이스 (0) | 2023.10.23 |
[JAVA] 7. 클래스와 객체 (0) | 2023.10.19 |
[JAVA] 6. 배열과 문자열 (1) | 2023.10.19 |
[JAVA] 2. 자료형 (0) | 2023.10.19 |