24.

カプセル化の具体例

ページの作成
テンプレートを更新

ページの作成

親となるページを選択してください。

ページは必ず何かしらの親ページに紐づきます。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球

子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール

親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!

ここではPHPのカプセル化の具体例を記載する。
カプセル化で使用するデータ格納用のクラスを以下、DTO(Data Transfer Object)と呼称する。

【DTOクラス】

class TestDto {
    
    //プロパティを定義
    //値の出し入れはgetter, setterメソッドを経由させるのでプロパティの修飾子はprivate
    private $prop1;
    
    //コンストラクタ
    //インスタンス化時に設定したい値を定義する
    function __construct() {
        $this->prop1 = 'AAA';
    }

    //プロパティから値を取得するゲッターメソッド
    function getProp1() {
        return $this->prop1;
    }

    //プロパティに値を設定するセッターメソッド
    function setProp1($prop1) {
        $this->prop1 = $prop1;
    }

}

 

【DTOを使用する処理】

<html>
    <body>
        <?php
        require_once 'TestDto.php';
        
        //DTOクラスをインスタンス化
        $testDto = new TestDto();
        
        //コンストラクタで設定されたデフォルト値を取得する
        print 'コンストラクタで設定された値';
        print "</br>";

        print 'Prop1 = '; 
        print $testDto->getProp1();
        print "</br></br>";
        
        //値を変更する
        $testDto->setProp1('BBB');
        
        //値が変更されたことを確認する
        print '設定し直した値';
        print "</br>";

        print 'Prop1 = '; 
        print $testDto->getProp1();
        print "</br>";
        
        ?>
    </body>
</html>

 

【処理結果】
    コンストラクタで設定された値
    Prop1 = AAA
    
    設定し直した値
    Prop1 = BBB
 

子ページ
子ページはありません
同階層のページ
  1. 基本事項
  2. HTMLへの埋め込み
  3. 変数
  4. 可変変数
  5. 定数
  6. データ型
  7. キャスト
  8. エスケープ文字
  9. 配列
  10. 演算子
  11. 代入の際の注意点
  12. 条件分岐
  13. 繰り返し処理
  14. クラスとインスタンス
  15. コンストラクタ
  16. 関数
  17. スーパーグローバル変数
  18. スコープ
  19. staticについて
  20. yieldについて
  21. ファイルのアップロード方法
  22. DB接続方法
  23. SQL実行方法
  24. カプセル化の具体例
  25. 継承の構文
  26. オーバーライド
  27. ポリモーフィズム(多様性)の具体例
  28. 抽象クラス・メソッドの構文と具体例
  29. GET通信
  30. try catchで全てのエラーを拾う方法

最近コメントのあったページ

最近の質問

コメント一覧

コメントがありません

ログインしなければコメント投稿はできません。