0
왜 클래스 외부에 생성자를 정의하면서 생성자 이름을 사용하여 클래스 이름을 작성해야합니까? .... 클래스 이름은 생성자 이름에서 쉽게 감지 할 수 있습니다. 그들은 같은 이름을 가져야하고 리턴 타입이 없으므로 같은 이름을 가진 다른 일반 함수와 구별 할 수 있습니다.생성자의 신택스 정의
왜 클래스 외부에 생성자를 정의하면서 생성자 이름을 사용하여 클래스 이름을 작성해야합니까? .... 클래스 이름은 생성자 이름에서 쉽게 감지 할 수 있습니다. 그들은 같은 이름을 가져야하고 리턴 타입이 없으므로 같은 이름을 가진 다른 일반 함수와 구별 할 수 있습니다.생성자의 신택스 정의
왜 클래스 외부에 생성자를 정의하면서 생성자 이름으로 클래스 이름을 작성해야합니까? .... 이해가 되나요?
예. 클래스의 다른 메소드를 정의 할 때와 동일합니다. 생성자는 여전히 클래스의 멤버이며 클래스 선언 외부에서 정의 된 경우 모든 멤버 메서드의 범위를 올바르게 지정해야합니다. 서로 다른 네임 스페이스에있는 여러 클래스가 같은 이름을 가진다면 어떻게되는지 상상해보십시오. 네임 스페이스와 클래스 이름으로 범위를 지정하지 않고 생성자 이름을 지정하면 모호한 결과가 발생합니다.
모두가 이미 익숙해 져 있기 때문에. 표준은 법률과 마찬가지로 사람들의 의견으로 만들어집니다. 우리가 단수 일 때도 "너는 ..."이 아니라 "너는 ..."이라고해야만하는 것과 같습니다. .... 구문에 대해 더 잘 알고 있다면 세계 /위원회에 제안 할 수 있습니다. – javaLover
컴파일러가 예를 들어 다음을 봅니다. 'Foo ('Foo ('Foo')는 함수 선언, 함수 정의, 캐스트,'Foo' 객체 생성 등 여러 가지 대안을 가질 수 있습니다. 또 다른 가능한 대안을 추가하면 컴파일러가 훨씬 더 어려워 질 것입니다 더욱이 갑자기 클래스의 멤버 함수를 만드는 데 두 가지 구문을 사용하게되어 프로그래머가 더 어려워집니다. –