객체지향 다형성 예제

août 2, 2019 9:51 Publié par

일반적으로 언급되는 다형성의 2가지 유형이 있습니다. 다형성을 사용하면 이러한 각 클래스에는 서로 다른 기본 데이터가 있습니다. 점 셰이프에는 두 개의 좌표만 필요합니다(물론 2차원 공간에 있다고 가정). 원에는 중심과 반지름이 필요합니다. 사각형 또는 사각형에는 왼쪽 상단 및 오른쪽 아래 모서리와 회전에 대해 두 개의 좌표가 필요합니다. 불규칙한 다각형에는 일련의 선이 필요합니다. 자세한 내용은 런타임 다형성을 알아보려면 이 링크를 방문하십시오. 적어도 PHP와 같은 동적으로 형식이 있는 언어(C++ 또는 Java에 대해 모르는 경우)에서는 개발자가 미리 개체 유형을 알지 못하고 메서드의 올바른 구현이 이루어질 것이라고 신뢰하지 않고 메서드를 호출할 수 있습니다. 호출. 예를 들어, 사용자가 만든 번호의 형식을 선택 한다고 가정 해: 이것은 런타임 동안 결정 되 고 따라서 동적 또는 런타임 다형성 이라고 그래서, 모든 개체는 유형 자동차, 하지만 런 타임 동안 실행 에 따라 달라 집니다 호출 하는 개체에 따라 달라 집니다. 발생.

이를 다형성이라고 합니다. 다형성은 정적이고 역동적일 수 있습니다. 메서드 오버로드는 정적 다형성이지만 메서드 재정의는 동적 다형성입니다. 동적 디스패치 오버헤드는 없지만 추가 컴파일러 지원이 필요하기 때문에 정적 다형성이 더 빠르게 실행됩니다. 또한 정적 다형성은 컴파일러(특히 최적화용), 소스 코드 분석 도구 및 인간 판독기(프로그래머)에 의한 더 큰 정적 분석을 허용합니다. 동적 다형성은 더 유연하지만 속도가 느립니다.예를 들어 동적 다형성은 오리 입력을 허용하며 동적으로 연결된 라이브러리는 전체 형식을 알지 못하고 개체에서 작동할 수 있습니다. C++는 가상 메서드를 통해 제한된 형태의 다형성(동적 바인딩)을 구현합니다. OO에는 다형성의 몇 가지 맛이 있습니다.

모든 변수는 다형성일 수 있습니다. 언어가 다형성 변수를 지원하는 방식은 정적 또는 동적으로 바인딩되는지 여부에 따라 달라집니다. 간단한 단어와 실시간 예제 주셔서 감사합니다. 그것은 내가 쉽게 공동 관계를 하는 데 도움이. 이 기사의 창조자에게 찬사를 보입니까!!!!!!!! 다형성이라는 단어는 여러 형태를 갖는 것을 의미합니다. 간단하게 말하면 다형성을 메시지의 기능으로 정의하여 두 개 이상의 형태로 표시할 수 있습니다. 다형성의 실제 예는 동시에 사람이 다른 특성을 가질 수 있습니다.

Classés dans :Non classé

Cet article a été écrit par NotreSite

Les commentaires sont fermés.