본문 바로가기
웹개발/java

자바 상속

by 지구별 여행자 임탱 2024. 3. 19.
728x90

자바 상속
자바 상속은 객체 지향 프로그래밍에서 중요한 개념 중 하나입니다. 상속은 클래스간의 관계를 맺어주는 기능으로, 한 클래스가 다른 클래스의 특성과 동작을 상속받을 수 있게 해줍니다. 이를 통해 코드의 재사용성과 유지보수성이 증가하여 개발자들이 효율적으로 프로그램을 작성할 수 있습니다.

상속의 기본 원리와 구조
상속은 부모 클래스와 자식 클래스 간의 관계를 형성합니다. 부모 클래스는 자신이 가지고 있는 특성과 동작을 자식 클래스에게 상속해줌으로써 자식 클래스는 부모 클래스의 멤버 변수와 메소드를 사용할 수 있습니다. 이러한 상속 관계는 계층 구조를 형성하며, 상위 클래스는 하위 클래스에게 영향을 미칠 수 있습니다.

자바에서 클래스 상속하기
자바에서 클래스 상속은 'extends' 키워드를 사용하여 이루어집니다. 예를 들어, '부모클래스'라는 이름의 클래스를 정의하고 다른 클래스에서 이를 상속받으려면 'extends 부모클래스'라고 명시해주면 됩니다. 이렇게 상속받은 자식 클래스는 부모 클래스의 멤버 변수와 메소드를 사용할 수 있습니다.

메소드 오버라이딩과 역할
자식 클래스가 상속받은 부모 클래스의 메소드를 재정의하는 것을 메소드 오버라이딩이라고 합니다. 이를 통해 자식 클래스는 부모 클래스의 메소드를 자신에게 맞게 변경할 수 있습니다. 메소드 오버라이딩은 다형성을 구현하는 중요한 개념으로, 같은 이름의 메소드를 다양한 방식으로 사용할 수 있게 해줍니다.

 

super 키워드의 사용법
super 키워드는 자식 클래스에서 부모 클래스를 참조하는 데 사용됩니다. 자식 클래스에서 부모 클래스의 멤버 변수나 메소드를 접근할 때 super 키워드를 사용하여 참조할 수 있습니다. 이를 통해 부모 클래스와 자식 클래스 간의 데이터 전달이 가능해지며, 메소드 오버라이딩 시에도 super 키워드를 사용하여 부모 클래스의 메소드를 호출할 수 있습니다.

상속의 제한과 final 키워드
자바에서는 final 키워드를 사용하여 상속을 제한할 수 있습니다. final로 선언된 클래스는 다른 클래스에서 상속받을 수 없으며, final로 선언된 메소드는 오버라이딩 될 수 없습니다. 이를 통해 개발자들은 특정한 경우에 상속을 제한하고 코드의 안정성을 높일 수 있습니다.

class 동물 {
    void 먹다() {
        System.out.println("이 동물은 먹고 있습니다.");
    }
}

class 강아지 extends 동물 {
    void 짖다() {
        System.out.println("강아지가 짖습니다. 멍멍!");
    }
}

public class 상속테스트 {
    public static void main(String[] args) {
        강아지 내강아지 = new 강아지();
        
        내강아지.먹다(); // 부모 클래스의 메소드 호출
        내강아지.짖다(); // 자식 클래스의 메소드 호출
    }
}

 

'웹개발 > java' 카테고리의 다른 글

자바 디자인패턴  (0) 2024.03.27
자바 JVM(Java Virtual Machine)  (0) 2024.03.27
자바 재귀호출(Recursive Call)  (1) 2024.03.19
자바 정규식  (1) 2024.03.17
자바 웹크롤링 하기  (0) 2024.03.13