スコープを設定する いよいよ最後です。最後はスコープの変え方です。 スコープとは、クラス内へのアクセスを制御するためのもので、クラスの外からのアクセスを防ぐことが出来ます。 スコープの設定 今まではあえてつけていませんが、何もしない状態では、publicの状態になっています。 「public」はパブリックと読み、クラス内、クラス外の両方からのアクセスを許可するスコープです。 いままで宣言してきたメソッドやフィールドは、すべてpublicになっています。 他に、スコープは「private」と「protected」があります。 「private(プライベート)」は、そのクラス内のみで有効なスコープになります。 つまり、外部からのアクセスはもちろん、継承後のクラスからも参照できなくなります。
スコープ
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    class CSample(){
      private: //プライベートにする
        field Name;
      public: //パブリック
        constructor Create; //コンストラクタは必ずパブリックで
    }

    constructor CSample.Create(){
      Name = "CSample";
    }
こうすることで、Nameにアクセスすることが出来なくなります。
アクセスできない
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    class CSample(){
      private:
        field Name;
      public:
        constructor Create;
    }

    constructor CSample.Create(){
      Name = "CSample";
    }

    Obj = CSample.Create;
    Mes(Obj.Name); //エラー
もう一つの「protected(プロテクティド)」は、外部からの参照は禁止しますが、継承後のクラスからは参照することが出来ます。 つまり、継承後のクラスに何か処理をして欲しいときに使うスコープです。 CControlクラスのTextなどがその例です。

前へ / index / 次へ
プログラム言語「Spinel」
Copyright © 2005 - gabyou All Rights Reserved.
NOTES Software.