ホームページ  >  記事  >  バックエンド開発  >  phpとjavaの静的変数

phpとjavaの静的変数

巴扎黑
巴扎黑オリジナル
2016-11-23 15:34:39990ブラウズ

静的メンバーはクラスが最初にロードされるときに作成されるため、クラス外のオブジェクトを必要とせずにクラス名を使用して静的メンバーにアクセスできます。静的メンバーはこのクラスのすべてのインスタンス オブジェクトで共有されるため、PHP 言語でオブジェクトを使用できます。クラス内の静的メンバーにアクセスするには?

静的メンバーはすべてのオブジェクト内に存在するわけではありませんが、すべてのオブジェクトは共有できるため、オブジェクトを使用してメンバーにアクセスする場合、そのような属性定義は存在せず、他の場合にはオブジェクトを使用して静的メンバーにアクセスすることはできません。

Java ではオブジェクトを使用して静的メンバーにアクセスできます。クラス内の静的メソッドはクラスの静的属性にのみアクセスできます。これが理由です。このクラスのメソッド内でこのクラスの他のメンバーにアクセスしたい場合は、$this 参照を使用する必要があり、$this 参照ポインターはこのメソッドを呼び出すオブジェクトを表します。 is オブジェクトを使用して呼び出されるのではなく、クラス名を使用してアクセスされるため、オブジェクトはまったく存在せず、$this への参照もありません。$this への参照がなければ、クラス内の非静的メンバーは使用できません。静的メンバーはオブジェクトなしでアクセスできるため、クラス内の静的メソッドはクラスの静的属性にのみアクセスできます。 $this が存在しないため、他の静的属性にアクセスするには特別なクラス "self" を使用します。 "; self は $this と似ていますが、self がこの静的メソッドが配置されているクラスを表す点が異なります。したがって、静的メソッドでは、メソッドが配置されているクラスの「クラス名」を使用することも、他の静的メンバーにアクセスするために「self」を使用することもできます。特別な事情がない場合、通常は後者を使用します。は、「self::メンバー属性」の「方法」です。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。