masayuki5160's diary

名古屋でWeb系エンジニアしてます。

クラスとオブジェクトの勉強2

コンストラクタについて

コンストラクタはクラスのインスタンスが作られるタイミングで自動的に呼ばれるメソッドのこと。
実装はこんな感じで。

public function __construct(引数,引数,,,)
{
(実装)
}

コンストラクタは使用することで、
オブジェクトを生成する際に必要なパラメータを引数として受け取り、プロパティにセットすることができる。



<?php
class Employee
{
/*クラス内で使用する定数を宣言*/
/*クラス定数は"クラス名::定数名"とすることでアクセス可能*/
const PARTTIME= 0x01;
const REGULAR = 0x02;
const CONTRACT= 0x04;

/*プロパティの宣言*/
private $name;
private $type;

/*コンストラクタの定義*/
public function __construct($name,$type)
{
$this -> name = $name;
$this -> type = $type;
}

public function showName()
{
echo $this -> name,"さん";
}
}

/*コンストラクタ(クラス定数を利用してインスタンス化)*/
$tanaka = new Employee("田中",Employee::REGULAR);
$tanaka -> showName();
?>

上記ではコンストラクタを使用して、
nameプロパティに値をセットしている。