Skip to main content

클래스 계층 구조는 무엇입니까?

class 클래스 분류법이라고도 불리는 클래스 계층 구조는 비슷한 일을하기 위해 상속을 통해 연결된 관련 클래스 그룹입니다.계층 구조의 최상위는 아래의 다른 모든 클래스가 도출되는 단일 기본 클래스 일 수 있거나, 계층은 하나 이상의 파생 클래스에서 나중에 기능이 함께 병합되는 여러 기본 클래스를 가질 수 있습니다.계급 간의 관계는 나무로 설명 될 수 있으며, 큰 분류 체계 내의 각 작은 나무는 계층 구조로 간주 될 수 있습니다.C ++는 여러 상속을 허용하므로 복잡한 계층 구조는 여러 뿌리와 여러 나무로 서로 합쳐질 수 있습니다.반면에 Java 는 단일 상속으로 제한되므로 계급 관계는 일반적으로 단일 뿌리를 가진 비교적 자체 포함 된 나무로 제작 된 더 간단합니다.인터페이스 상속은 Java 의 클래스 계층에 약간의 복잡성을 추가 할 수 있지만, 인터페이스는 나무를 함께 병합하는 것과는 다른 복잡한 프레임 워크에서 거의 호출되지 않습니다.언어의 규칙이 항상 상속과 관련하여 따르는 한.계층 구조의 클래스는 공개, 보호, 추상, 콘크리트 또는 가상 일 수 있습니다.인터페이스, 글로벌 기능 및 친구도 사용할 수 있습니다.컴퓨터 언어에 따라 이러한 유형 중 일부는 다른 유형보다 상속에 더 잘 적용 할 수 있습니다.일반적으로 계층 구조는 매우 유연하며 여러 목적으로 여러 가지 방법으로 사용할 수 있습니다.모든 수업은 위에서 언급 한 유형 일 수 있습니다.일반적으로, 그 아래에 파생 된 클래스가없는 계층 구조의 마지막 클래스는 공공 및 콘크리트 여야합니다.그러나 순수한 추상 클래스 계층 구조도 존재할 수 있기 때문에 이것은 단지 경험의 규칙 일뿐입니다.

클래스 계층 구조는 코드를 구성하고 기능을 캡슐화하는 데 유용한 도구 일 수 있지만, 계층 구조를 너무 깊이 파고들 수있는 시간이있을 수 있습니다.실제로 코드를 명확히하고 유지하기보다 쉽게 혼동하십시오.많은 수업 사이에 강력한 관계를 구축하려면 어느 정도의 예측이 필요합니다.처음에는 많은 작은 조각으로 코드를 깨는 것이 더 쉬울 수 있지만, 그 작은 조각들은 나중에 다루기가 더 어려워 질 수 있습니다.올바르게 구축되면 클래스 계층 구조는 개발자와 사용자 모두 클래스 작동 방식을 결정하는 데 도움이됩니다.유지 보수와 명확성을 염두에두고 구축되면 많은 수준의 상속이 뒤돌아보고 이해하기 위해 혼란 스러울 수 있습니다.