본문 바로가기
Web Programing/JAVA

자바 상속이란? 필요성과 선언 방법 예시

by 기록하는 초보 2024. 3. 4.
반응형

자바의 상속은 효율적인 프로그램을 작성하는데 중요한 역할을 합니다. 자바에서 상속은 클래스 간의 관계를 맺어 코드의 재사용성을 높여주며, 한 클래스가 다른 클래스의 속성과 메소드를 물려받을 수 있게 해주는 것입니다. 이번 글에서 상속에 대해서 알아보고 선언 방법과 예시를 알아보겠습니다.

 

상속이란?

상속은 한 클래스(부모 클래스)가 가지고 있는 속성과 메소드를 다른 클래스(자식 클래스)가 물려받는 프로그래밍 기법입니다. 이를 통해 기존에 작성된 코드를 재사용하고 확장하는 것이 가능해집니다. 

상속의 필요성

코드 재사용 : 개발 시간과 비용을 줄일 수 있습니다.

신뢰성 : 이미 검증된 클래스를 기반으로 새로운 클래스를 구축할 수 있어, 결과적으로 더 안정적인 프로그래밍 개발이 가능합니다.

관리 용이성 : 클래스 간 계층 구조를 활용하여 관리와 유지보수가 용이해집니다.

상속의 장단점

유지보수 및 확장성이 용이하며, 형식적인 코드를 줄일 수 있어 코드의 간결성이 향상됩니다. 하지만, 부적절한 상속은 코드의 복잡성을 증가시킬 수 있으며, 상속받는 클래스가 많아질수록 코드의 이해도가 떨어질 수 있습니다.

 

상속 선언 방법

자바에서 상속은 extends 키워드를 통해 이루어집니다. 자식 클래스는 단 하나의 부모 클래스만 상속받을 수 있으며, 이를 단일 상속이라고 합니다.

public class Parent {...} //부모 클래스

public class Child extends Parent {...} //자식 클래스

 

 

클래스 상속 예제

클래스 상속 선언 예제입니다.

public class Parent {
    public void method1(){
        //부모클래스의 메소드
    }
}

public class Child extends Parent {
    //자식 클래스에서는 'extends' 키워드를 사용해서 부모 클래스를 상속받음
    public void method2(){
    	//자식 클래스의 메소드
    }
}

자식 클래스인 Child는 부모 클래스인 Parent의 method1()을 상속받게 됩니다.

 

상송의 특징과 사용방법

자바는 클래스 레벨에서 다중 상속을 지원하지 않습니다. 이를 보완하기 위해 인터페이스를 활용할 수 있습니다. 

매소드 오버라이딩 : 자식 클래스에서 부모 클래스로부터 상속받은 메서드를 재정의하는 것을 말합니다. 이를 통해 동일한 이름의 메서드가 여러 형태로 구현될 수 있어 유연성을 제공합니다.

super 키워드 : 자식 클래스 내에서 부모 클래스의 멤버에 접근하거나, 부모 클래스의 생성자를 호출할 때 super를 사용합니다.

다형성과 상속 : 다형성은 상속을 기반으로 하며, 동일한 타입으로 여러 객체를 잡조할 수 있는 성징을 말합니다. 상속을 통해 확장성을 갖는 코드를 작성할 수 있습니다.

반응형