상속
- 어떤 클래스의 필드와 메소드를 다른 클래스가 물려 받아 사용하는 것
- 부모클래스가 자식클래스에게 필드와 메소드를 물려 줌
- 자바에서는 부모클래스를 "슈퍼클래스", 자식클래스를 "서브클래스"라고 함
상속의 장점
- 동일한 메소드를 클래스마다 여러 번 정의할 필요가 없음
- 클래스를 부모-자식 관계로 관리할 수 있음
- 클래스의 재사용과 확장이 쉬움
- 새로운 클래스의 작성 속도가 빠름
Person 클래스(메인메소드 없음)
public void eat() { System.out.println("먹는다."); } public void sleep() { System.out.println("잔다."); } public void walk() { System.out.println("걷는다."); }
Student 클래스(메인메소드 없음)
- 서브클래스
- extends 키워드를 사용
- 슈퍼클래스 Person의 모든 메소드를 자기것처럼 사용
public class Student extends Person{ public void study() { System.out.println("공부한다."); } }
StudentMain 클래스(메인메소드 실행)
Student student = new Student(); student.eat(); student.sleep(); student.walk(); student.study();
출력:
먹는다.
잔다.
걷는다.
공부한다.