>  기사  >  Java  >  유산

유산

WBOY
WBOY원래의
2024-09-10 06:48:061271검색
  • 상속은 객체지향 프로그래밍의 세 가지 기본 원칙 중 하나입니다.

  • 계층적 분류 생성을 허용합니다.

  • 상속을 사용하면 관련 항목 집합에 공통적인 특성을 정의하는 일반 클래스를 만들 수 있습니다.

  • 이 일반 클래스는 독점적인 특성을 추가하는 보다 구체적인 다른 클래스에 의해 상속될 수 있습니다.

  • 자바 전문 용어로 상속받은 클래스를 슈퍼클래스라고 합니다.

  • 상속받는 클래스를 서브클래스라고 합니다.

  • 하위 클래스는 상위 클래스의 특수 버전입니다.

  • 하위 클래스는 슈퍼 클래스의 모든 변수와 메서드를 상속하고 고유한 요소를 추가합니다.

상속의 기본 측면

  • Java는 상속을 지원하므로 한 클래스가 선언에 다른 클래스를 포함할 수 있습니다.

  • extends 키워드를 사용하면 됩니다.

  • 하위 클래스는 상위 클래스에 기능을 추가(확장)합니다.

  • 이것의 예로는 2차원 객체의 너비와 높이를 저장하는 TwoDShape라는 슈퍼클래스를 만드는 것이 있습니다.

  • TwoDShape를 확장하기 위해 Triangle이라는 하위 클래스가 생성됩니다.

  • extends 키워드는 하위 클래스를 생성하는 데 사용됩니다.

유산

유산

  • TwoDShape는 정사각형, 직사각형, 삼각형 등과 같은 일반적인 2차원 도형의 속성을 정의합니다.

  • Triangle 클래스는 TwoDShape의 하위 클래스이며 특정 유형인 삼각형을 생성합니다.

  • Triangle은 TwoDShape의 모든 것을 상속하고 스타일 필드, Area() 메서드 및 showStyle() 메서드를 추가합니다.

  • style은 "full", "contour" 또는 "isosceles"와 같은 설명이 가능한 삼각형의 스타일을 저장합니다.

  • area() 메소드는 삼각형의 면적을 계산하여 반환합니다.

  • showStyle() 메소드는 삼각형의 스타일을 표시합니다.

  • Triangle은 Area()와 t1 및 t2 개체 모두에서 TwoDShape의 너비 및 높이 멤버에 직접 액세스할 수 있습니다.

  • TwoDShape는 Triangle의 슈퍼클래스임에도 불구하고 독립적인 클래스이므로 별도로 사용할 수 있습니다.

TwoDShape 모양 = 새로운 TwoDShape();
모양.너비 = 10;
모양.높이 = 20;
모양.showDim();

  • TwoDShape 클래스의 객체는 TwoDShape의 하위 클래스에 대해 모르거나 액세스하지 않습니다.

유산

  • 슈퍼클래스를 상속받는 클래스 선언:

클래스 하위 클래스 이름은 슈퍼클래스 이름 {
을 확장합니다. // 클래스 본문
}

  • Java에서는 생성하는 모든 하위 클래스에 대해 단일 슈퍼클래스만 지정할 수 있습니다.

  • Java는 C++와 달리 다중 상속(동일한 하위 클래스에 있는 여러 슈퍼클래스의 상속)을 지원하지 않습니다.

  • 하위 클래스가 다른 하위 클래스의 상위 클래스가 되는 상속 계층 구조를 만드는 것이 가능합니다.

  • 어떤 클래스도 그 자체로 슈퍼클래스가 될 수 없습니다.

  • 상속의 장점은 슈퍼클래스가 여러 객체에 공통적인 속성을 정의하여 수많은 특정 하위 클래스를 생성할 수 있다는 점입니다.

  • 각 하위 클래스는 슈퍼클래스를 기반으로 고유한 특정 분류를 정의할 수 있습니다.

  • 사각형을 캡슐화하기 위해 TwoDShape의 하위 클래스를 만드는 것이 그 예입니다.

유산

  • Rectangle 클래스는 TwoDShape의 하위 클래스입니다.

  • 직사각형이 정사각형인지 여부를 결정하는 isSquare() 메서드를 추가합니다(너비가 높이와 같은 경우).

  • 직사각형의 면적을 계산하는area() 메소드도 추가합니다.

위 내용은 유산의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.