Java

[자바 입문] 상속

sangyunpark 2023. 8. 16. 19:09

상속

상속이란? 부모가 가진 것을 자식에게 물려주는것을 의미한다.

  • 노트북은 컴퓨터의 한 종류이다.
  • 침대는 가구의 한 종류이다. 혹은 침대는 가구다.
  • 소방차는 자동차다.

위와 같이 말할 수 있는 관계를 is a관계 혹은 kind of 관계라고 한다.

Car를 상속받은 Bus를 class로 표현하는 방법

public class Car{

}

public class extends Car{


}
  • java는 클래스 이름 뒤에 extends 키워드를 적고 부모클래스 이름을 적게 되면 부모 클래스가 가지고 있는 것을 상속받게 된다.
  • 상속이란 부모가 가지고 있는 것을 자식이 물려받는 것을 말한다. 부모가 가지고 있는 것을 자식이 사용할 수 있게 된다.

부모클래스에 메소드 추가하기

Car에 run()메소드를 추가

public class Car{
    public void run(){
        System.out.println("달리다.");
    }
}

Bus에 메소드 추가

public class Bus extends Car{
    public void ppangpang(){
        System.out.prinln("빵빵");
    }
}

Bus는 Car를 물려받은 run 메소드와 ppangppang메소드를 사용할 수 있게 된다.
부모가 가지고 있는 메소드외에 추가로 메소드를 선언하는 것을 확장하였다고 표현한다.

Car를 상속받은 Bus 사용

public class BusExam{
    public static void main(String args[]){
        Bus bus = new Bus();
        bus.run(); // 아무런 문제가 없다!
    }
}

자바 상속 실습

https://school.programmers.co.kr/learn/courses/5/lessons/385

Machine.Java

class Machine {
    public void turnOn() {
        System.out.println("켰습니다.");    
    }

    public void turnOff() {
        System.out.println("껐습니다.");    
    }
}

Car.java

class Car extends Machine {

}