🔍 내가 배운 내용 요약


  1. 상속을 통해 코드 재사용과 확장성을 높일 수 있음
  2. 다형성을 통해 부모 타입으로 여러 자식 객체를 다룰 수 있음
  3. super, @Override, 업캐스팅/다운캐스팅, 동적 바인딩의 개념 이해

📚 상속 (Inheritance)


정의

한 클래스가 다른 클래스로부터 필드와 메서드를 물려받는 것


문법

Java

class 부모클래스 {
    // 필드, 생성자, 메서드
}

class 자식클래스 extends 부모클래스 {
    // 부모로부터 상속받고, 자신만의 기능 추가
}

예시

Java

class Animal {
    void eat() {
        System.out.println("먹는다");
    }
}

class Dog extends Animal {
    void bark() {
        System.out.println("멍멍!");
    }
}
Java

Dog d = new Dog();
d.eat();  // 부모 메서드 호출
d.bark(); // 자식 고유 메서드

상속의 특징

특징 설명
extends 키워드 사용 한 개의 부모 클래스만 상속 가능 (단일 상속)
생성자는 상속되지 않음 생성자는 직접 정의해야 함
super 키워드 부모 클래스의 필드나 메서드에 접근
메서드 오버라이딩 부모 메서드를 재정의 (@Override)