부모(상위) class의 속성과 메소드를 그대로 사용할 수 있도록 물려받는 과정이다.
종속관계, 상위 class의 특징을 모두 보유하고 있는 하위 class가 존재할때 상위 class를 상속받았다고 일컫는다.
예를 들어, Bus class와 Car class가 있다고 하자.
Bus는 Car에 속하는 특정 class이므로, 상속받았다고 일컫는다.
먼저 Java는 시스템적으로 상속받는 class를 설정해주는 도구를 제공해준다.
public class Bus extends Car{
}
위와 같이 extends 부모class의 구조가 나타나고, 이때 상속받은 자식 class는 부모 class의 속성과 메소드를 물려받게된다.
public class Car{
public void run(){
System.out.println("Running");
}
}
따라서 위와 같이 Car class 내부 run() 메소드가 선언되어있을때,
Bus에 어떠한 메소드가 선언되어있지 않더라도 Car의 메소드를 활용할 수 있다.
※ 물론 bus class의 인스턴스를 먼저 생성해주어야 하고, bus class 자체적인 메소드를 사용할 수도 있다.
public class test{
public static void main(String[] args){
Bus bus = new Bus();
bus.run();
}
}
부모가 자식 class 메소드를 사용할 수는 없다.