Skip to content
- 다형성
- 객체 지향 프로그래밍의 세 가지 특징 중 하나는 다양한 형태를 가지고 있다는 것입니다.
- 하나의 작업으로 여러 작업을 수행하는 개념
- 부모 타입에서 파생된 다른 종류의 자식 객체를 부모 클래스 타입으로 취급할 수 있는 상속을 이용한 기술
- 클래스 캐스트
- 캐스팅
- 상속 관계의 부모 클래스와 자식 클래스 사이에서 부모 타입의 참조 타입 변수는 모든 자식 타입의 객체 주소를 받을 수 있음(자동)
- 예를 들어
- Auto c = 신형 쏘나타();
- 쏘나타 클래스는 자동차 클래스의 후손입니다.
- 쏘나타 클래스 타입에서 오토 클래스 타입으로 변경
* 자식 객체의 주소를 받는 부모 타입의 참조 변수를 통해 사용할 수 있는 자손 정보는 원래 부모 타입이었던 요소에서만 참조할 수 있습니다.
- 따르다
- 자식 객체의 주소를 받는 부모 참조 변수로 자식 객체 요소를 참조해야 하는 경우 부모 클래스 타입의 참조 변수를 자식 클래스 타입으로 캐스팅
- 이것은 자동으로 처리되지 않으므로 typec를 캐스팅하려면 자손 유형을 지정해야 합니다.
- 예를 들어
- Auto c = 신형 쏘나타();
- ((소나타)c.moveSonate()
*클래스 간 타입 변환은 상속 관계에 있는 클래스 사이에서만 가능
- 연산자의 인스턴스
- 클래스 유형이 올바르면 true를 반환하고 그렇지 않으면 false를 반환합니다.
- 객체 배열 및 다형성
- 다형성을 사용하여 상속 관계에서 여러 유형의 자식 클래스 개체를 부모 클래스 유형의 배열 범위에 저장할 수 있습니다.
- 매개변수 및 다형성
- 다형성을 사용하면 하위 유형의 개체를 가져오기 위해 메서드를 호출할 때 상위 유형의 변수 하나만 사용할 수 있습니다.
- 제본
- 실행될 실제 메서드 코드와 호출 코드 연결
- 실제로 프로그램은 실행 전에 컴파일되기 때문에 모든 메서드가 바인딩됩니다.
- 동적 바인딩
- 동적 바인딩 설정을 위한 요구 사항
- 추상 클래스
- 상호 작용
- 추상 클래스의 확장 버전
- 개체는 생성할 수 없으며 변수만 생성할 수 있습니다.
- 상속과 인터페이스를 모두 할 경우 먼저 상속해야 오류가 발생하지 않습니다.
- 다중 상속 가능