abstract Type: Instruction Pour les classes: Spécifie qu'une classe est abstraite, c'est à dire qu'elle peut être héritée (extends) mais elle ne peut être initialisée avec new. Exemple: abstract class A { } class AA extends A { } // new A; // erreur // new AA; // OK Pour les méthodes: Crée une méthode abstraite qui devra être implémenté dans les classes qui en hérite. Exemples: abstract class A { abstract function test(); } class AA extends A { function test() { } } // 7.2, surchager une méthode abstraite pour une classe abstraite qui hérite d'une class abstraite abstract class A { abstract function test(string $s); } abstract class AA extends A { abstract function test($s) : int; } class AAA extends AA { function test(string $s) : int { return 1; } }