演習課題「継承したメソッドを呼び出そう」
右のコードでは、Greetingクラスに $msg と $target が定義されており、あいさつを標示するsayHelloメソッドが定義されています。
また、Greetingクラスを継承したHelloクラスも定義されて、$helloにオブジェクトが代入されています。
$helloに代入したオブジェクトから、GreetingクラスのsayHelloメソッドを使ってメッセージを表示するようにしてください。
プログラムを実行して、正しく出力されれば演習課題クリアです!
期待する出力値
hello paiza
演習課題「間違い探し」
右のコードでは、sayHelloメソッドを呼び出していますが、エラーになってしまいます。
間違いを修正して、「hello paiza」と表示されるようにしてください。
プログラムを実行して、正しく出力されれば演習課題クリアです!
期待する出力値
hello paiza
#02:クラスを継承する
ここでは、クラスの継承ついて学習します。例として、RPGのアイテムがはいる入れ物のクラスを作り、そこから宝箱と宝石箱クラスを継承で作ってみましょう。
class JewelryBox extends Box {
public function look() {
echo "宝箱はキラキラと輝いている。\n";
}
}
<?php
// クラスを継承する
class Box {
public $myItem;
public function __construct() {
$this->myItem = "新しいアイテム";
}
public function open() {
echo "宝箱を開いた。".$this->myItem."を手に入れた。\n";
}
}
class JewelryBox extends Box {
public function look() {
echo "宝箱はキラキラと輝いている。\n";
}
}
$box = new Box();
$box->open();
echo "\n";
$jewelryBox = new JewelryBox();
$jewelryBox->look();
$jewelryBox->open();
?>
- 【PHP】クラス - Qiita
https://qiita.com/tokutoku393/items/effbb977b0daf8f3ef37
- PHPオブジェクト指向入門(前半) - Qiita
https://qiita.com/mpyw/items/41230bec5c02142ae691
- オブジェクト指向を理解!PHPで知っておきたいクラスとは | TechAcademyマガジン
https://techacademy.jp/magazine/11403