Computer >> 컴퓨터 >  >> 프로그래밍 >> Java

Java 단일 수준 상속(Single Level Inheritance) 개념과 예제 총정리

단일 수준 상속(Single Level Inheritance)은 하나의 클래스가 오직 하나의 부모 클래스로부터 속성과 메서드를 물려받는 상속 형태를 말합니다. 예를 들어, B 클래스가 A 클래스를 상속하는 경우가 이에 해당합니다.

단일 수준 상속의 기본 구조

Java에서는 extends 키워드를 사용하여 클래스 간의 상속 관계를 정의합니다. 자식 클래스는 부모 클래스의 public 또는 protected 멤버(필드와 메서드)에 접근할 수 있으며, 자신만의 고유한 기능을 추가로 정의할 수도 있습니다.

이러한 상속 구조의 장점은 다음과 같습니다.

  • 코드 재사용성이 높아져 중복 코드를 줄일 수 있습니다.
  • 부모 클래스의 기능을 확장하여 유지보수가 용이합니다.
  • 클래스 간의 계층 구조를 명확하게 표현할 수 있습니다.

예제 코드

다음은 Shape(도형) 클래스를 Rectangle(사각형) 클래스가 상속받는 단순한 예제입니다.

class Shape {
    public void display() {
        System.out.println("Inside display");
    }
}
class Rectangle extends Shape {
    public void area() {
        System.out.println("Inside area");
    }
}
public class Tester {
    public static void main(String[] arguments) {
        Rectangle rect = new Rectangle();
        rect.display();
        rect.area();
    }
}

실행 결과

Inside display
Inside area

코드 설명

위 예제에서 Rectangle 클래스는 extends 키워드를 통해 Shape 클래스를 상속받았습니다. 그 결과, Rectangle 객체인 rect는 부모 클래스에서 정의된 display() 메서드와 자기 자신에게 정의된 area() 메서드, 두 가지 메서드를 모두 호출할 수 있습니다.

실행 결과에서 볼 수 있듯이, rect.display()는 부모 클래스인 Shape에 정의된 내용을 출력하고, rect.area()는 자식 클래스인 Rectangle에 정의된 내용을 출력합니다. 이것이 바로 단일 수준 상속의 핵심입니다. 하나의 부모로부터 기능을 물려받아 확장하는 것입니다.

정리

단일 수준 상속은 Java 상속의 가장 기본적인 형태로, 하나의 부모 클래스와 하나의 자식 클래스 간의 관계를 의미합니다. 이 구조를 잘 이해하면 다중 수준 상속(multilevel inheritance)이나 계층적 상속(hierarchical inheritance)과 같은 더 복잡한 상속 구조도 쉽게 이해할 수 있습니다.