Il existe deux types de fonctions en PHP POO : les méthodes de classe et les méthodes statiques. Les méthodes de classe appartiennent à une classe spécifique et sont appelées par des instances de cette classe ; les méthodes statiques n'appartiennent à aucune classe et sont appelées via le nom de la classe. Les méthodes de classe sont déclarées à l'aide de la fonction publique et les méthodes statiques sont déclarées à l'aide de la fonction public static. Les méthodes de classe sont appelées via des instances d'objet ($object->myMethod()) et les méthodes statiques sont appelées directement via le nom de la classe (MyClass::myStaticMethod()).
Fonctions en programmation orientée objet (POO) PHP : questions et réponses
Q : Quels sont les types de fonctions en POO PHP ?
Réponse : Il existe deux types de fonctions dans PHP OOP :
Q : Comment déclarer une méthode de classe ?
Réponse : Les méthodes de classe peuvent être déclarées en utilisant la syntaxe suivante :
class MyClass { public function myMethod() { ... } }
Q : Comment déclarer une méthode statique ?
Réponse : Les méthodes statiques peuvent être déclarées en utilisant la syntaxe suivante :
class MyClass { public static function myStaticMethod() { ... } }
Q : Comment appeler une méthode de classe ?
Réponse : Les méthodes de classe peuvent être appelées en utilisant la syntaxe suivante :
$object = new MyClass(); $object->myMethod();
Q : Comment appeler une méthode statique ?
Réponse : Vous pouvez utiliser la syntaxe suivante pour appeler des méthodes statiques :
MyClass::myStaticMethod();
Cas pratique : Créer une classe qui calcule l'aire
class Rectangle { private $width; private $height; public function setWidth($width) { $this->width = $width; } public function setHeight($height) { $this->height = $height; } public function getArea() { return $this->width * $this->height; } public static function calculateArea($width, $height) { return $width * $height; } } // 创建矩形对象 $rectangle = new Rectangle(); $rectangle->setWidth(10); $rectangle->setHeight(5); // 调用类方法计算面积 $area = $rectangle->getArea(); // 调用静态方法计算面积 $staticArea = Rectangle::calculateArea(10, 5); echo "类方法计算的面积:{$area}\n"; echo "静态方法计算的面积:{$staticArea}\n";
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!