この記事では、PHP オブジェクト指向に関する静的メソッド、属性、定数を中心に紹介します。必要な友達は参考にしてください
定義。
static
キーワード定義を使用します。 クラス属性またはメソッドを静的として宣言します。つまり、 インスタンス化せずに直接アクセスできるようになります。
static
关键字定义;声明类属性或方法为静态,即可以不实例化,直接访问。
1)静态属性,不可以通过实例化对象访问;
2)静态方法,可以;
3)静态方法,不可以使用$this
:: 或 self::
具体如下所示:
访问位置 调用属性 调用方法 类的内部/外部 类名::属性名 类名::方法名 内部 self::属性名 self/类名::方法名
<?php class MyClass { // 静态属性 public static $a = 'static'; // 静态方法 public static function func1() { echo '静态方法'; // 类的内部调用静态属性 echo MyClass::$a; echo self::$a; // 类的内部调用静态方法 MyClass::func2(); self::func2(); } // 试验静态方法调用另一个静态方法 public static function func2() { echo 'This is static function 2.'; } } // 类的外部调用静态属性、方法 echo MyClass::$a; MyClass::func1(); // 实例化后再调用 $me = new MyClass(); echo $me::$a; // 调用成功 // echo $me ->a; 调用失败 $me -> func1(); // 调用成功
常量
const
1) 静的プロパティ、インスタンス化されたオブジェクトからはアクセスできません。
2) 静的メソッド、はい
3) 静的メソッド、$this
使用方法class MyClass { public static $a = 'abc'; const NUM = 123; } echo MyClass::$a; echo '<br/>'; echo MyClass::NUM; echo '<br/>'; // 修改静态属性 MyClass::$a = 'def'; echo MyClass::$a; echo '<br/>'; // 修改常量 //MyClass::NUM = 234; 赋值失败
rrreee
総合例const
クラス内で常に変更されない値を定数として定義できます。 定数の値は固定値である必要があります。
例rrreee
関連する推奨事項: 🎜🎜🎜php オブジェクト指向コンストラクターとデストラクター🎜🎜🎜🎜🎜php オブジェクト指向のカプセル化🎜🎜🎜🎜🎜php オブジェクト指向クラスとインスタンス化されたオブジェクト🎜 🎜以上がPHP オブジェクト指向の静的メソッド、プロパティ、および定数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。