PHPのオブジェクト指向について教えてください。
現在、PHPでオブジェクト指向について勉強しているのですが下記のプログラムがどのような順番で表示されるのかが分からず、悩んでいます。
まず、Carというクラスを作り、走行するdriveメソッドと走行した距離を返すgetKmメソッドが記述されているのですが、インスタンスを$priusとしました。
そこで、$prius->drive(10); とメソッドにアクセスして echo $prius->getkm(); とすると10と表示され、さらに再度 $prius->drive(90); と代入すし、再度echo すると100と表示されるのですが、この表示されるまでの処理の順番がわかりません。。
$prius->drive(10); の値がdriveメソッドの変数$distanceに代入されるまではなんとなくわかるのですが、なぜそのあと echo $prius->getkm(); で表示されるのかが分かりません。
getkmメソッド内にある、returnがどういった動きをするのかもPHPマニュアル読んだのですが、いまいちつかめず分からない状態です。
なので、現エンジニア方やプログラミング勉強中の方、教えていただけないでしょうか?
よろしくお願いいたします。
PHP
<?php class Car { private $km = 0; public function drive($distance) { $this->km += $distance; } //returnとはなんなのか? public function getKm() { return $this->km; } } $prius=new Car(); //この値(10)がどういった順番で代入されていくのか? $prius->drive(10); //なぜこの記述で10と出力されるのか? echo $prius->getkm(); $prius->drive(90); echo $prius->getkm();
回答1件
あなたの回答
tips
プレビュー