鬱と付き合い、これからも生きていく 僕の長い旅

鬱(うつ病)と診断され、パニック、不安障害と付き合い、向き合いながら、これからも生きていくと決めた僕の日々。

自律神経失調症、パニック、不安障害と付き合っていくことを決めた 
誰かにとってヒーローになりたいと、心に刻んだ僕の足跡
鬱体験記だったり、そのときの想いを綴るブログです。
このブログが闘い、悩んでいる方にとっても、何かの力になれれば。


PHP オブジェクト指向の考え方

はずかしながら、僕はずっとClass、オブジェクト指向

間違えて覚えてたわけです。

というより、深く考えてなかった。

なので、備忘録としてメモ

 

---車--- (良くある例ですね

・走る

・曲がる

・止まる

ーーーーーーー

 

ーーー救急車ーーー    ーーー4tトラックーーー

・サイレン鳴らす     ・リフトが上がる

ーーーーーーーーー    -----------

 

同じ車の機能がある。

ただその車の中にも上記のように、救急車、トラックなど

用途別に追加しなきゃいけない機能もある。

そこで

 

 

---車---

・走る

・曲がる

・止まる

ーーーーーーー

  ↓継承 ↑親クラス     ↓継承 ↑親クラス

ーーー救急車ーーー    ーーー4tトラックーーー

・サイレン鳴らす     ・リフトが上がる

ーーーーーーーーー    -----------

 

継承することで、”車”というものについている機能を

救急車や、トラックに継承する。

これでコードの管理など、とにかく分かりやすくなる。

 

ex)

---車---

<?php

    class car{

        function Run(){

            走る

            $this -> curve();

        }

        function Stop(){

            止まる

        }

        function Curve(){

            曲がる

        }

    }

?>

 

ーーー軽自動車ーーー

<?php

    class kei extends Car{

        function index(){

            $this -> run();

            $this -> クラクション();

        }

        function run(){

        }

    }

?>

 

では、ここのclass keiの$thisはどこをさしているのか。

これは親だと思っていますが

”これ”という意味だったので

class keiの中のrun()をさすんですね。

 

もし、class keiにfunction run()がなければ

親クラスからもってくるわけです。

 

ただ、もしclass keiに

 

        function run(){

 

 

 

            parent :: run();

        }

となっていれば、継承元の

親クラスから持ってきます。

 

いやぁ。

やっぱ擬似コードを書いてもらいながら、説明いただけると

かなりわかりやすい。

すっきりしたー!

 

実際にコードはかけてたけど、

一番いけない「あ、なんか動いた」

状態でした。

続きはまた。

つぎは__constractかな。

 

※あ、大文字小文字ぐちゃぐちゃだ。すんません。