Maison > Article > développement back-end > Quelles sont les similitudes et les différences entre les interfaces et les classes abstraites en PHP
Les similitudes entre les interfaces et les classes abstraites :
1. Les classes abstraites et les interfaces ont des méthodes abstraites
2. Les classes abstraites et les interfaces ne peuvent pas créer d'objets d'instance
3. Les classes abstraites et les interfaces ont la même signification (définir une spécification)
La différence entre les interfaces et les classes abstraites :
1. Toutes les méthodes de l'interface doivent être des méthodes abstraites (les méthodes non abstraites ne peuvent pas être utilisées), donc n'utilisez pas abstract
dans toutes les méthodes de l'interface et terminez directement par des points-virgules
2, Les attributs des membres dans l'interface doivent être des constantes (ne peuvent pas avoir de variables)
3. Toutes les autorisations de l'interface doivent être publiques (public
)
4. utilisé class
, utilisez interface
interface Person{ public $name; //不能声明变量 报错 const NAME='tom'// 可以声明常量 function test(); //因为接口中全部是抽象方法 所以 省去 abstract 。 function test1(); Protect function test3() 报错 只可以是 public } $re=new Person; //报错 不可以 创建实例化 对象 。 echo Person:: NAME; 输出常量。
Tutoriel recommandé : Tutoriel vidéo PHP
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!