자바 튜토리얼

자바 홈 자바 소개 자바 시작하기 자바 구문 자바 주석 자바 변수 자바 데이터 유형 자바 타입 캐스팅 자바 연산자 자바 문자열 자바 수학 자바 부울 자바 If...Else 자바 스위치 자바 while 루프 자바 For 루프 자바 중단/계속 자바 배열

자바 메소드

자바 메소드 자바 메소드 매개변수 자바 메소드 오버로딩 자바 범위 자바 재귀

자바 클래스

자바 OOP 자바 클래스/객체 자바 클래스 속성 자바 클래스 메소드 자바 생성자 자바 수정자 자바 캡슐화 자바 패키지 / API 자바 상속 자바 다형성 자바 내부 클래스 자바 추상화 자바 인터페이스 자바 열거형 자바 사용자 입력 자바 날짜 자바 배열 목록 자바 링크드리스트 자바 해시맵 자바 해시셋 자바 반복자 자바 래퍼 클래스 자바 예외 자바 정규식 자바 스레드 자바 람다

자바 파일 처리

자바 파일 Java 파일 작성/쓰기 자바 읽기 파일 자바 삭제 파일

자바 방법

두 개의 숫자 더하기

자바 참조

자바 키워드 자바 문자열 메소드 자바 수학 메소드

자바 예제

자바 예제 자바 컴파일러 자바 연습 자바 퀴즈 자바 인증서


자바 상속


Java 상속(서브클래스 및 슈퍼클래스)

Java에서는 한 클래스에서 다른 클래스로 속성과 메서드를 상속할 수 있습니다. "상속 개념"을 두 가지 범주로 그룹화합니다.

  • 하위 클래스 (자식) - 다른 클래스에서 상속하는 클래스
  • 상위 클래스 (부모) - 상속되는 클래스

클래스에서 상속하려면 extends 키워드를 사용하십시오.

아래 예에서 클래스(하위 클래스)는 클래스(수퍼 클래스) Car의 속성과 메서드를 상속합니다 .Vehicle

예시

class Vehicle {
  protected String brand = "Ford";        // Vehicle attribute
  public void honk() {                    // Vehicle method
    System.out.println("Tuut, tuut!");
  }
}

class Car extends Vehicle {
  private String modelName = "Mustang";    // Car attribute
  public static void main(String[] args) {

    // Create a myCar object
    Car myCar = new Car();

    // Call the honk() method (from the Vehicle class) on the myCar object
    myCar.honk();

    // Display the value of the brand attribute (from the Vehicle class) and the value of the modelName from the Car class
    System.out.println(myCar.brand + " " + myCar.modelName);
  }
}

protected차량 의 수정자를 눈치채셨나요 ?

Vehicle브랜드 속성을 access modifier 로 설정합니다 . 로 설정 하면 Car 클래스가 액세스할 수 없습니다.protected private

"상속"을 사용하는 이유와 시기는?

- 코드 재사용성에 유용합니다. 새 클래스를 만들 때 기존 클래스의 속성과 메서드를 재사용합니다.

팁: 다른 작업을 수행하기 위해 상속된 메서드를 사용 하는 다음 장인 다형성 (Polymorphism) 도 살펴보십시오 .


최종 키워드

다른 클래스가 클래스에서 상속되지 않도록 하려면 다음 final키워드 를 사용하십시오.

클래스 에 액세스하려고 하면 finalJava에서 다음 오류를 생성합니다.

final class Vehicle {
  ...
}

class Car extends Vehicle {
  ...
}

출력은 다음과 같습니다.

Main.java:9: error: cannot inherit from final Vehicle
class Main extends Vehicle {
                  ^
1 error)