Cours abstrait (Apprentissage recommandé : cours java)
Le cours abstrait doit être utilisé Modification, la sous-classe doit implémenter la méthode abstraite dans la classe abstraite. S'il existe des méthodes non implémentées, la sous-classe doit également être décorée avec abstract. Le modificateur d'autorisation par défaut d'une classe abstraite est public, qui peut être défini comme public ou protégé. S'il est défini comme privé, les sous-classes ne peuvent pas en hériter. Les classes abstraites ne peuvent pas créer d'objets
La différence entre les classes abstraites et les classes ordinaires
Les classes abstraites doivent être modifiées avec public et procted (si elles sont modifiées avec private, les sous-classes ne peuvent pas hériter, et sa méthode abstraite ne peut pas être implémentée). La valeur par défaut est public
Les classes abstraites ne peuvent pas créer d'objets
Si une sous-classe hérite d'une classe abstraite, elle doit implémenter toutes ses méthodes abstraites. S'il existe des méthodes abstraites non implémentées, elles doivent être définies comme abstraites
Interface
Les variables de l'interface sont implicitement modifiées avec public static final, et une initialisation doit être valeur donnée.
La méthode est implicitement modifiée avec public abstract (et elle ne peut être que publique. Si elle est privée ou protégée, alors une erreur de compilation sera signalée).
Les méthodes dans les interfaces ne peuvent pas avoir d'implémentations spécifiques par défaut (les implémentations par défaut sont disponibles à partir de JDK1.8)
La différence entre les interfaces et les classes abstraites
Les classes abstraites ne peuvent hériter qu'une seule fois, mais peuvent implémenter plusieurs interfaces
Les interfaces et les classes abstraites doivent implémenter toutes les méthodes. S'il y a des méthodes abstraites non implémentées dans la classe abstraite, alors la sous-classe doit également être définie comme une classe abstraite. Les classes abstraites peuvent avoir des méthodes non abstraites
Les variables de l'interface doivent être modifiées avec public static final et une valeur initiale doit être donnée. La classe d'implémentation ne peut donc pas être redéfinie, ni sa valeur modifiée.
Les méthodes de l'interface sont publiques abstraites par défaut et ne peuvent être que de ce type. ne peut pas être statique et les méthodes des interfaces ne peuvent pas être remplacées par des sous-classes. Les méthodes statiques sont autorisées dans les classes abstraites
.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!