PHP オブジェクト指向演算子「::」の使用法の簡単な説明

巴扎黑
リリース: 2023-03-07 12:00:01
オリジナル
22416 人が閲覧しました

演算子「::」とは何ですか?

演算子「::」は、クラス内でのみ使用できる疑似変数 $this よりも強力です。演算子「::」は、インスタンスを宣言しなくても、クラス内のメンバー メソッドまたはメンバー変数にアクセスできます。

演算子「::」構文:

「::」演算子を使用するための一般的な構文は次のとおりです:

キーワード:: 変数名/定数名/メソッド名


注:

ここでのキーワードは、public、private、protected、static などではなくなりましたが、次の 3 つの状況が当てはまります:

(1) 親: 親クラスでメンバー変数、メンバー メソッド、および定数を呼び出すことができます。

(2) self: 現在のクラスの静的メンバーと定数を呼び出すことができます。

(3) クラス名: このクラスの変数、定数、およびメソッドを呼び出すことができます。

注意事項:

静的変数 (メソッド) の関連コンテンツについては、このサイトの記事を参照してください: http://www.php.cn/php-weizijiaocheng-360326.html

上記は次のとおりです。簡単な紹介 演算子「::」の基本的な内容を簡単な例を使って、演算子「::」の使い方をより鮮明かつ具体的に理解しましょう。

<?php
header("content-type:text/html;charset=utf-8");
class Hero{                                        //定义类
    const CHARACTER = &#39;奥利安娜&#39;;                  //定义常量,用关键字const
    function __construct()                        //父类中的构造函数
    {
        echo &#39;5楼要玩中单&#39; . Hero :: CHARACTER . &#39;不给就送&#39;;     //输出常量
        echo &#39;<br/>&#39;;
    }
}
 class I_Hreo extends Hero{                      //创建子类I_Hreo继承父类
     const ROLE = &#39;亚索&#39;;                         //创建常量
     function __construct()                      //子类中创建构造函数
     {
         parent :: __construct();               //引用父类中的构造函数
         echo &#39;4楼中单&#39; . self :: ROLE . &#39;贼6&#39;; //子类中输出
     }
 }
$gamer = new I_Hreo();                             //实例化
ログイン後にコピー


例の説明:

上記の例では、最初に親クラス Hero を作成し、定数を定義し、コンストラクターを作成してから、親クラス Hreo を継承するサブクラス I_Hreo を作成しました。定数はサブクラスでも定義されます。次のステップが重要なポイントです。親クラスのコンストラクターを参照します。上記では 3 つの状況を紹介しました。親: 親クラスでメンバー変数、メンバー メソッド、および定数を呼び出すことができます。ここでは親クラスのメソッドを呼び出しているため、parent::__construct() を使用します。次に、サブクラスのコンストラクタでサブクラスに定義されている定数を出力し、現在のクラスのキーワードを呼び出します。前述したように、self: は現在のクラスの静的メンバーと定数を呼び出すことができるため、ここでは self:: ROLE を使用します。 , 最後にフォーマットして実行します。

結果は下の図に示されています:

PHP オブジェクト指向演算子「::」の使用法の簡単な説明

上記は演算子「::」の使用法についての簡単な説明です。皆さんのお役に立てれば幸いです。

以上がPHP オブジェクト指向演算子「::」の使用法の簡単な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート