Java - 상속

HY SONG·2023년 2월 28일
0

Java

목록 보기
6/15

객체 지향 프로그래밍의 기본 원칙 - 상속


상속이란?

이미 존재하는 클래스를 기반으로 새로운 클래스를 만들 때 사용하는 문법 요소

상속의 필요성

  • 새로 만드는 클래스는 기존 클래스의 모든 속성과 메서드를 물려받아 사용할 수 있다
  • 코드의 재사용성이 높아지기 때문에 유지보수가 쉬워진다

상속에 사용되는 키워드

extends

extends 키워드를 사용하여 부모 클래스를 지정

class Tree extends OakTree

super

super 키워드는 부모 클래스의 생성자나 메서드를 호출할 때 사용

class Tree {
    Tree() {
        System.out.println("A tree is growing.");
    }
}

class OakTree extends Tree {
    OakTree() {
        super(); // Tree 클래스의 생성자 호출
        System.out.println("An oak tree is dropping leaves.");
    }
}

super

부모 클래스의 멤버에 접근하기 위해 사용되는 키워드
super를 사용하여 부모 클래스의 메서드, 속성 등을 호출

super()

부모 클래스의 생성자를 호출하기 위해 사용되는 메서드


상속에 사용되는 문법

오버라이딩(Overriding)

자식 클래스에서 부모 클래스의 메서드를 재정의하는 것

추상 클래스(Abstract class)와 추상 메서드(Abstract method)

추상 클래스 : 미완성 클래스
추상 메서드 : 구현 내용이 없는 메서드

상속 계층 구조를 더욱 명확하게 설계 가능

상속의 장단점

장점

코드 재사용성

  • 상속을 통해 부모 클래스에서 정의한 멤버를 자식 클래스에서 재사용할 수 있다
  • 코드의 중복을 줄이고, 유지보수성을 높일 수 있다

확장성

  • 상속을 통해 새로운 클래스를 생성하고, 기존 클래스에 새로운 멤버를 추가하여 확장할 수 있다
  • 기존 클래스의 기능을 유지하면서 새로운 기능을 추가할 수 있다

다형성

  • 상속을 통해 같은 타입으로 여러 클래스 객체를 다룰 수 있는 다형성을 구현할 수 있다

0개의 댓글