メソッドには、プライベート(private)とパブリック(public)の別があります。
メソッドは、何もしなければパブリックになります。パブリックメソッドは、オブジェクトに対して外部からメッセージを送ることによって起動できます。広い意味では、パブリックメソッドは、全てインターフェイスであるということができます。オブジェクトが外部と通信するための窓口を定めているからです。
これに対して、プライベートメソッドは、オブジェクトの内的な動作を定めるものです。外部からメッセージを送ることによって起動することはできません(そのようなメソッドはない、というエラーが表示されます)。メソッドの内部からの呼び出しによってのみ起動できるメソッドです。具体的には、"SELF"を受け手としたearly bind(静的束縛)でしか利用できません。
メソッドをプライベートとするには、その定義の前に、"PRIVATE"と宣言します。この宣言以降はプライベートメソッドとしてコンパイルされます。
再びパブリック
メソッドの定義に戻りたいときは、"END_PRIVATE"と宣言します。この宣言以降に定義されるメソッドは、デフォルトに戻って、パブリックメソッドとなります。
メソッド定義はクラス定義の中に書き込むわけですから、上のワードはクラス定義の中のメソッド定義の行間に書くことになります。念のため。
関連項目:
最終更新:2018年12月23日 13:33