オブジェクト向けキーワード(const,static)
Constキーワード
オブジェクト内のクラスに定数を定義する方法です.
Const大文字==値
クラスの定数がphpの定数と同じに定義されると、定義が変更されません.
注意:
1.$this->定数名で呼び出さないでください
2.定数名で直接呼び出すわけでもない
3.クラス内での呼び出し方法(2つ)
方式1.クラス名:定数名
方式2 self::定数名
4.クラスの外部呼び出しで、オブジェクトをインスタンス化する必要はありません.直接クラス名を使用します::定数名呼び出し
例:
Staticキーワード:
1.静的メンバー・メソッドとメンバー・プロパティの効率は特に高く、結果が可能な限り静的メンバー・メソッドまたはメンバー・プロパティと書くことを許可している場合.
2.静的変数を宣言するにはstaticキーワードで始まり、変数を追加します.
3.静的変数$this->静的メンバー属性名で呼び出さないでください
4.クラスの内部で静的メンバーを呼び出す2つの方法.
1つ目:クラス名の使用::静的メンバー属性名;を選択して、静的メンバーのプロパティを呼び出します.
2つ目:self::静的メンバー属性名の使用
5.≪クラス名の使用|Use Class Name|emdw≫:静的メンバーのプロパティ名の前に$記号を付け、値を変更する場合は=代入演算子を使用して直接代入します.
6.クラスへの外部アクセスはインスタンス化する必要はありません.直接クラス名::静的メンバー属性を呼び出します.
7.静的なメンバーメソッドを宣言するには,メソッド名にstaticキーワードを付けるだけでよい.
8.クラスの外部で静的メンバーを呼び出す方法は2つあります.
(1)クラス名::スタティックメソッド名
(2)オブジェクト->スタティックメソッド名
9.静的メンバーメソッドでは$thisキーワードを使用してメンバー属性とメンバーメソッドを呼び出すことは禁止され、静的メンバーメソッドでは$thisキーワードを使用することは禁止されます.
10.非静的メンバーメソッドの内部で$this->静的メンバーメソッド()を使用して静的メンバーメソッドを呼び出します.
11.非静的メンバーメソッドの内部でクラスの内部でクラス名を使用します::静的メンバーメソッド名()は静的メンバーメソッドを呼び出します.
12.非静的メンバーメソッドの内部self::静的メンバーメソッド名()で静的メンバーメソッドを呼び出します.
13.静的メソッドの内部では$this->メンバー属性またはメンバーメソッドは使用できませんが、ローカル変数または型パラメータ、静的メンバー属性、定数などを使用できます.
14.private protected,publicとstaticキーワードを一緒に使用する場合は累積効果です.
例:
オブジェクト内のクラスに定数を定義する方法です.
Const大文字==値
クラスの定数がphpの定数と同じに定義されると、定義が変更されません.
注意:
1.$this->定数名で呼び出さないでください
2.定数名で直接呼び出すわけでもない
3.クラス内での呼び出し方法(2つ)
方式1.クラス名:定数名
方式2 self::定数名
4.クラスの外部呼び出しで、オブジェクトをインスタンス化する必要はありません.直接クラス名を使用します::定数名呼び出し
例:
- <?php
- class ren{
-
- public $name;
-
- //
- const TYPE=' ';
-
- function say(){
- //
- echo ' '.self::TYPE.'<br>';
- }
-
- }
-
- //
- $p= new ren();
-
- $p->say();
-
- //
- echo ren::TYPE;
- ?>
Staticキーワード:
1.静的メンバー・メソッドとメンバー・プロパティの効率は特に高く、結果が可能な限り静的メンバー・メソッドまたはメンバー・プロパティと書くことを許可している場合.
2.静的変数を宣言するにはstaticキーワードで始まり、変数を追加します.
3.静的変数$this->静的メンバー属性名で呼び出さないでください
4.クラスの内部で静的メンバーを呼び出す2つの方法.
1つ目:クラス名の使用::静的メンバー属性名;を選択して、静的メンバーのプロパティを呼び出します.
2つ目:self::静的メンバー属性名の使用
5.≪クラス名の使用|Use Class Name|emdw≫:静的メンバーのプロパティ名の前に$記号を付け、値を変更する場合は=代入演算子を使用して直接代入します.
6.クラスへの外部アクセスはインスタンス化する必要はありません.直接クラス名::静的メンバー属性を呼び出します.
7.静的なメンバーメソッドを宣言するには,メソッド名にstaticキーワードを付けるだけでよい.
8.クラスの外部で静的メンバーを呼び出す方法は2つあります.
(1)クラス名::スタティックメソッド名
(2)オブジェクト->スタティックメソッド名
9.静的メンバーメソッドでは$thisキーワードを使用してメンバー属性とメンバーメソッドを呼び出すことは禁止され、静的メンバーメソッドでは$thisキーワードを使用することは禁止されます.
10.非静的メンバーメソッドの内部で$this->静的メンバーメソッド()を使用して静的メンバーメソッドを呼び出します.
11.非静的メンバーメソッドの内部でクラスの内部でクラス名を使用します::静的メンバーメソッド名()は静的メンバーメソッドを呼び出します.
12.非静的メンバーメソッドの内部self::静的メンバーメソッド名()で静的メンバーメソッドを呼び出します.
13.静的メソッドの内部では$this->メンバー属性またはメンバーメソッドは使用できませんが、ローカル変数または型パラメータ、静的メンバー属性、定数などを使用できます.
14.private protected,publicとstaticキーワードを一緒に使用する場合は累積効果です.
例:
- <?php
- class st {
-
- static $num =10;
-
- function hi(){
- /*
- echo st::$num.'<br/>';*/
-
-
- # self
- #echo self::$num;
-
-
- //
- // self::$num=50;
- // echo self::$num;
- }
- }
-
- $demo = new st;
- $demo -> hi();
-
- //
- echo st::$num;
- ?>