抽象静的メソッドPHPのインスタンス子クラス?
これには、$ anyObjectName =new static()をselfと一緒に使用します。
例
PHPコードは次のとおりです
<!DOCTYPE html> <html> <body> <?php abstract class Base{ protected static $fullName = ''; abstract protected function customFunction(); public static function get_obj($param1 = null, $param2 = null){ $obj = new static(); $obj->customFunction(); } public static function getFullName(){ return static::$fullName; } } class Child extends Base { protected static $fullName = 'John Doe'; protected function customFunction(){ echo self::getFullName() . "<br>"; echo $this; } } Child::get_obj(); ?> </body> </html>
出力
これにより、次の出力が生成されます
John Doe
-
C#での仮想vs封印vs新規vs抽象
仮想 virtualキーワードを使用すると、クラスをオーバーライドできます。子クラスの親クラスメソッドをオーバーライドするには、親クラスメソッドを仮想として宣言します。 封印 クラスが封印されていると宣言されている場合、それを継承することはできません。抽象クラスは封印されていると宣言することはできません。 上書きされないように、C#で封印されたものを使用してください。メソッドのC#で封印された修飾子を使用すると、メソッドはオーバーライドする機能を失います。封印されたメソッドは派生クラスの一部である必要があり、メソッドはオーバーライドされたメソッドである必要があります。 public se
-
Pythonクラスの静的メソッドとは何ですか?
すべてのPythonクラスには、インスタンスメソッド、クラスメソッド、静的メソッドの3種類のメソッドがあります。 例 コードを検討する class OurClass: def method(self): return 'instance method called', self @classmethod def classmethod(cls): return 'c