new 연산자

연산자 new는 지정된 클래스의 새 객체를 생성합니다. 이때 클래스에 생성자가 정의되어 있다면 호출됩니다. 연산자는 생성된 객체를 반환하며, 이 객체는 변수에 할당할 수 있습니다.

문법

php$object = new ClassName([arguments]);

예시

간단한 클래스와 그 인스턴스를 생성해 보겠습니다:

php<?php
  class User {
    public $name;
    
    public function __construct($name) {
      $this->name = $name;
    }
  }
  
  $user = new User('John');
  echo $user->name;
?>

코드 실행 결과:

php'John'

예시

생성자 없이 객체 생성하기:

php<?php
  class Product {
    public $price = 100;
  }
  
  $product = new Product();
  echo $product->price;
?>

코드 실행 결과:

php100

예시

익명 클래스 생성하기:

php<?php
  $obj = new class {
    public function sayHello() {
      echo 'Hello!';
    }
  };
  
  $obj->sayHello();
?>

코드 실행 결과:

php'Hello!'

함께 보기

  • 새 클래스를 선언하는 명령어 class,
  • 객체 생성자를 정의하는 메서드 __construct,