1
C++에서 기본 클래스 ctor 내에서 가상 메서드를 호출하면 절대 파생 재정의가 호출되지 않습니다.기본 클래스 ctor 내에서 가상 메서드를 호출
Java에 있습니다.
어째서 C#은 어떻습니까? (비주얼 스튜디오에 ATM을 설치하지 마십시오.)
C++에서 기본 클래스 ctor 내에서 가상 메서드를 호출하면 절대 파생 재정의가 호출되지 않습니다.기본 클래스 ctor 내에서 가상 메서드를 호출
Java에 있습니다.
어째서 C#은 어떻습니까? (비주얼 스튜디오에 ATM을 설치하지 마십시오.)
예, C#에서 사용됩니다 - 오브젝트는 구성되는 동안에도 "최종 유형"입니다.
Java에서와 마찬가지로 이는 잘못된 생각이며 해당 개체에 대해 아직 완전히 초기화되지 않은 상속 수준에서 구현 된 메서드를 호출 할 수 있으므로 가능하면 피해야합니다. 자바와 C# 간의 실행 순서
한 차이는 이런 C 번호, 이니셜과 인스턴스 변수에서 :
private readonly DateTime creationTime = DateTime.UtcNow;
...베이스 클래스 생성자 자바 반면 실행 전에 초기화 서브 클래스 생성자의 본체 바로 앞에 효과적으로 실행됩니다. 수퍼 클래스 생성자가 실행 된 후입니다.