ホームページ > バックエンド開発 > PHPチュートリアル > PHP オブジェクト指向開発_PHP チュートリアルなどの一般的なキーワード

PHP オブジェクト指向開発_PHP チュートリアルなどの一般的なキーワード

WBOY
リリース: 2016-07-13 10:50:14
オリジナル
951 人が閲覧しました

PHP のクラスでよく使用されるキーワードには、このキーワード (self) に似たロック (fianl)、静的属性 (static)、定数キーワード (const) があります。

授業でよく使われるキーワード

1.fianl: ロック
2.自分: このキーワードと似ています
3.static: 静的属性
4.const: 定数キーワード


1. キーワード: フィアン

クラスとメソッドを定義するために使用される重要なキーワード。クラスを定義する場合、クラスを継承することはできません。また、メソッドを定義するために使用する場合、メソッドをオーバーロードすることはできません。

1. Final はメンバー属性を変更できません (このキーワードはクラスでは使用されないことがよくあります)

2.final はクラスとメソッドのみを変更できます

機能:

finalで変更されたクラスはサブクラスに継承できません

final で変更されたメソッドはサブクラスによってオーバーライドできません

クラスの継承やメソッドのオーバーライドを制限するには、fianl を使用します


Final キーワードを使用したクラスの例:

最終クラスの人
{

}

final で定義されたクラスが継承されると、次のエラーが表示されます:

致命的なエラー: クラス Student は ...

の最終クラス (人) から継承できません

finalキーワードを使用した方法の例:

クラスの人
{
最終関数say()
{

}
}

例 #1 最後のメソッドの例

コードは次のとおりです コードをコピー

クラスBaseClass {
パブリック関数 test() {
echo "BaseClass::test() が呼び出されました";
}

最終的なパブリック関数 moreTesting() {
echo "BaseClass::moreTesting() が呼び出されました";
}
}

class ChildClass は BaseClass を拡張します {
パブリック関数 moreTesting() {
echo "ChildClass::moreTesting() が呼び出されました";
}
}
// 致命的なエラーを生成します: 最終メソッド BaseClass::moreTesting() をオーバーライドできません
?>

例 #2 最後のクラスの例

コードは次のとおりです コードをコピー

最終クラス BaseClass {
パブリック関数 test() {
echo "BaseClass::test() が呼び出されました";
}

// メソッドをfinalとして宣言するかどうかは関係ありません
最終的なパブリック関数 moreTesting() {
echo "BaseClass::moreTesting() が呼び出されました";
}
}

class ChildClass は BaseClass を拡張します {
}
// 致命的なエラーを生成します: クラス ChildClass は最終クラス (BaseClass) から継承できません
?>

2. キーワード: 自分

PHP クラスのメンバー変数またはメソッドにアクセスするとき、参照される変数またはメソッドが const (定数の定義) または static (静的宣言) として宣言されている場合は、operator:: を使用する必要があります。それ以外の場合は、参照される変数またはメソッドが const または static として宣言されていない場合は、演算子 -> を使用する必要があります。

さらに、クラス内から const または static の変数またはメソッドにアクセスする場合は、逆に、クラス内から非 const または static の変数またはメソッドにアクセスする場合は、自己参照の self を使用する必要があります。 、自己参照の $this を使用する必要があります


形式:

self::クラスの内部メンバー (プロパティまたはメソッド)
||
に相当 クラス名::クラスの内部メンバー (プロパティまたはメソッド)

注: 数学的または物理的クラスなしで内部プロパティやメソッドにアクセスすることは無意味であるため、通常、クラス内の静的メンバー、定数、およびその他の定義されたコンテンツへのアクセスには self が使用されます。

3. キーワード: 静的

メモリの最適化。クラスがインスタンス化されていない場合に使用できる静的プロパティまたはメソッドを定義するために使用されます。静的プロパティは単独でメモリを占有し、複数のオブジェクトを作成して繰り返しメモリを占有することはありません。

形式:
クラス class1 {
静的 $name;
静的関数 fun1 {
...
}
}

静的メンバーへのアクセス (クラス内):
self::静的メンバー
クラス名::静的メンバー

静的メンバーへのアクセス (クラス外):
クラス名::静的メンバー


4.キーワード: const

クラス内の定数を定義するために使用され、クラス内のメンバー属性のみを変更できます。
形式:

class class1 { //大文字の定義を使用し、$ 記号を使用しないことをお勧めします。
const NAME;
...
}

PHP const の小さな例を見てください:

コードは次のとおりです コードをコピー

クラスsay_const{
const CHARSET="中国"; 関数say_hello()を公開
{
エコー slef::CHARSET
}
}
$const1=新しいsay_const()
$const1->say_hello(); ?>

http://www.bkjia.com/PHPjc/632643.html

tru​​ehttp://www.bkjia.com/PHPjc/632643.html技術記事 PHP のクラスでよく使用されるキーワードには、このキーワード (self) と似ているロック (fianl)、静的属性 (static)、および定数キーワード (const) があります。
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート