Java
[Java] 객체지향 프로그래밍 - 상속
maribel
2019. 7. 19. 15:47
1. 상속의 개요
- 상속(inheritance) : 기존 클래스를 재사용하여 새로운 클래스를 작성하는 것
- 상속을 통해 중복 코딩을 줄여 효율적인 개발 가능(코딩 양 감소, 개발 시간 단축, 유지보수 편리, 재사용성)
- 상속과 복사는 다름 --> 기능은 비슷하지만 의미가 좀 다름
- 부모클래스(슈퍼클래스)가 자식클래스(서브클래스)에게 멤버변수,메서드를 물려줌
2. 상속의 특징
- 생성자는 상속이 불가능
- 다중상속 불가능 단일상속만 가능
- 상속 누적 가능
- Parent {int a} > Child { int b } > GrandChild { int a, b }
- GrandChild클래스는 Parent클래스의 멤버변수 a와 Child 클래스의 멤버변수 b를 모두 상속 가능
3. 오버라이딩
- 부모클래스로부터 상속받은 메서드 중에서 자식클래스가 메서드 내용을 수정하는 기법
- 메서드 이름은 그대로 쓰면서, 자식클래스 입장에 맞게 내용만 수정
4. super, super( )
- super --> 부모클래스의 객체를 가리키는 예약어
- super( ) --> 부모클래스의 생성자를 호출