상속(Inheritance)이란 무엇인가?
상속은 객체지향 프로그래밍에서의 중요한 개념 하나로, 부모 클래스의 속성과 기능을 자식클래스에게 물려주는 거을 말한다. 부모 클래스(Parent class) 또는 슈퍼 클래스(Super class)라고 부르며, 상속을 받은 클래스는 자식 클래스(Child class) 또는 서브/하위 클래스(sub class)라고 부른다.
상속의 장점
상속의 가장 큰 장점은 "재활용성"이다. 부모 클래스에서 정의된 속성과 메서드를 그대로 사용할 수 있으므로, 완전히 새로운 클래스를 만들지 않고도 새로운 기능을 추가할 수 있다. 또한, 필요에 따라 상속받은 메서드를 자식 클래스에서 수정하여 사용할 수 있어, 확장성 또한 향상 시킨다.
상속의 활용
자바에서 "extends"키워드를 사용하여 상속을 표현한다. 부모 클래스의 속성과 메서드는 상속이 가능하나, 생성자는 상속받을 수 없다. 또한, 부모 클래스에서 "private"으로 선언된 속성과 메서드는 접근제한이 있어, 직접 상속 받아 사용할 수 없다.
다형성, 오버라이딩, 오버로딩, 인터페이스, 추상 클래스
추가로, 객체지향 프로그래밍의 다른 중요한 개념인 "다형성, 오버라이딩과 오버로딩, 인터페이스와 추상클래스" 도 상속과 깊은 연관이있다.
이처럼, 상속은 코드의 재사용성을 높이고 확장성을 제공하는 등 객체지향 프로그래밍의 핵심개념이다.
'Java > JAVA 100 문제 풀이' 카테고리의 다른 글
자바 part.3 문제풀이 - 상속과 메서드 오버라이딩 이해하기 (0) | 2023.07.25 |
---|---|
자바 part.3 문제풀이 - 상속 : Person과 Hero예제를 통한 이해 (0) | 2023.07.25 |
자바 part.3 문제풀이 - 생성자 활용, 객체 생성과 초기화 (0) | 2023.07.24 |
자바 part.3 문제풀이 - 생성자 개념과 사용 예제 (0) | 2023.07.24 |
자바 part.3 문제풀이 - 클래스와 파일명의 관계 (0) | 2023.07.24 |