TECH I.S.

PHP OOP - 静的メソッド


PHP-静的メソッド

最初にクラスのインスタンスを作成せずに、静的メソッドを直接呼び出すことができます。

静的メソッドは、staticキーワード:

構文

<?php class <em>ClassName</em> {   public static function <em>staticMethod</em>() {     echo "Hello World!";   } } ?>

静的メソッドにアクセスするには、クラス名、ダブルコロン(::)、およびメソッド名を使用します。

構文

<em>ClassName</em>::<em>staticMethod</em>();

例を見てみましょう:

<?php class greeting {   public static function welcome() {     echo "Hello World!";   } } // Call static method greeting::welcome(); ?>

例の説明

ここでは、静的メソッドのwelcome()を宣言します。次に、クラス名、ダブルコロン (::)、およびメソッド名を使用して(最初にクラスのインスタンスを作成せずに)、静的メソッドを呼び出します。


PHP - 静的メソッドの詳細

クラスには、静的メソッドと非静的メソッドの両方を含めることができます。selfキーワードと二重コロン (::)を使用して、同じクラスのメソッドから静的メソッドにアクセスできます。:

<?php class greeting {   public static function welcome() {     echo "Hello World!";   }   public function __construct() {     self::welcome();   } } new greeting(); ?>

静的メソッドは、他のクラスのメソッドから呼び出すこともできます。その為には、静的メソッドはpublicでなければなりません。:

<?php class A {   public static function welcome() {     echo "Hello World!";   } } class B {   public function message() {     A::welcome();   } } $obj = new B(); echo $obj -> message(); ?>

子クラスから静的メソッドを呼び出すには、子クラスの内部でparentキーワードを使用します。ここで、静的メソッドにはpublicまたはprotectedを指定できます。

<?php class domain {   protected static function getWebsiteName() {     return "W3Schools.com";   } } class domainW3 extends domain {   public $websiteName;   public function __construct() {     $this->websiteName = parent::getWebsiteName();   } } $domainW3 = new domainW3; echo $domainW3 -> websiteName; ?>



プログラミング学習を加速させる

プログラミングをプロの講師に教えてもらいませんか。

テックアイエスのプログラミングスクールは初心者も大歓迎です。年齢制限もありません。転職・副業に強く、挫折させない手厚いサポートで稼ぐ力を身につけましょう!

スクールの詳細