PHPの学習を進めていて、オブジェクト指向というものに直面しました。
あっ、これはJAVAでもあった概念だと気が付きました。
クラス
クラスにはプロパティと呼ばれる変数と、メソッドといわれる関数が存在します。
私はクラスは指令室のようなものだと思っています。
例えば、モンスターA:強さ40、モンスターB:強さ50といったものを操ることができ、それぞれのモンスターにメソッドで「攻撃」や「防御」といったことをさせることができるという考えです。
インスタンスが以下でいうMonster Aになります。インスタンスはクラスで定義したものを引き継いだものです。
Class Monster{
public $name
public $strength
}
//ここでインスタンスを作成します。
$A = new monster;
$A->name = “Monster A”
echo $A->name
constructorとメソッド
これはインスタンスが作成されるときに実行されるメソッド関数になります。
これで名前が生成されます。
Public function_construct($name){
$this->name = $name;
}
ついでに他のメソッドも見てみます。
public function Attack(){
echo "$this->name is about to attack the opponent";
}
$A = new Monster("Monster A");
echo $A->name;
$A->Attack();
といった攻撃メソッドを作成しました。
これでMonster Aに攻撃をさせることができます。
インスタンス(=モンスター)さえ複数作れば、この攻撃コマンドは共有できますよね。
最後に
引き続きPHPを勉強していきます。