php 4에서 객체 생성시에 new Constructor; 와 new Constructor(); 의 차이점이

vudghkzm의 이미지

php 4에서 객체 생성시에

아래 두개의 코드의 차이점이 무엇인지 궁금합니다.

$a = new Constructor; $a = new Constructor();

nainu의 이미지

경험 상, 같습니다.

찾으려니 못찾겠네요. ;;

소타의 이미지

클래스 이름과 동일한 초기화 함수가 있을 때
$a = new Constructor($init_var); 같은 식으로 넘길 수 있습니다.
그 외에 차이점은 없지 않나요?

mykhs7200의 이미지

저는 $a = new Constructor();만 보았는데

$a = new Constructor; 도 가능하다면요

차이점은 보통 new 는 새로운 객체 생성자를 만드는 키워드인데 어떤 종류의 객체냐하면 Constructor이라는 클래스로부터 실객체를 만드는데 이 때 객체가 가지는 초기 속성을 ()안에 표현합니다.

예를 들면 Car라는 클래스가 있는데 이 클래스에는 차량 색깔과 배기량을 속성으로 가진다면

Car('red','2000')이렇게 만들고자하는 차량객체의 색깔과 배기량을 괄호안에 표시하면 빨간색의 2000cc 차량이 만들어진다. 그 객체가 $a인데 속성은 얼마든지 변경이 가능하고 객체 생성시의 속성값은 초기치의 의미이다.

따라서 속성을 명시하지 않을 수 있고 따라서 $a = new Constructor(); 와 같이 표현할수 있고
$a = new Constructor;와 같이도 표현할 수 있다.