[java] 자바 상속의 개념

자바에서 상속(inheritance)은 객체 지향 프로그래밍의 핵심 원칙 중 하나입니다. 상속은 이미 존재하는 클래스로부터 필드와 메소드를 물려받아 새로운 클래스를 생성하는 것을 말합니다.

자바에서 클래스는 extends 키워드를 사용하여 다른 클래스를 상속받을 수 있습니다.

예를 들어, 동물 클래스가 있고, 고양이 클래스가 동물 클래스를 상속받는 경우에는 고양이 클래스는 동물 클래스의 필드와 메소드를 모두 상속받습니다. 이때, 고양이 클래스는 기존의 동물 클래스에 새로운 기능을 추가하거나 기존 기능을 변경할 수 있습니다.

상속의 장점

  1. 코드 재사용성(Reusability): 이미 구현된 클래스의 기능을 다시 사용할 수 있도록 도와줍니다.
  2. 계층구조(Hierarchical Structure): 클래스들 간의 계층적인 구조를 만들어주어 코드의 이해와 관리를 쉽게 해줍니다.
  3. 다형성(Polymorphism): 상속을 통해 같은 인터페이스를 통해 서로 다른 기능을 하는 다양한 객체들을 사용할 수 있도록 해줍니다.

예제 코드

// 동물 클래스
class Animal {
  String name;
  
  public void sound() {
    System.out.println("동물 소리");
  }
}

// 고양이 클래스가 동물 클래스를 상속받음
class Cat extends Animal {
  public void sound() {
    System.out.println("야옹");
  }
}

위의 예제에서 Cat 클래스는 Animal 클래스를 상속받고 있으며, sound 메소드를 오버라이딩하여 새로운 기능을 추가하고 있음을 볼 수 있습니다.

상속은 자바에서 객체 지향 프로그래밍을 사용하는 데 있어 매우 중요한 개념 중 하나입니다.

자세한 내용은 Oracle Java Documentation를 참고하시기 바랍니다.