Quelle est la différence entre les classes abstraites et les interfaces Java ?
Classe abstraite : En Java, une classe modifiée par le mot-clé abstract est appelée une classe abstraite, et une méthode modifiée par le mot-clé abstract est appelée une méthode abstraite. n'ont que des méthodes, pas de corps de méthode. Caractéristiques des classes abstraites :
1. Les classes abstraites ne peuvent pas être instanciées et ne peuvent être héritées que
2. méthodes abstraites ;
3. Le modificateur d'une méthode abstraite dans une classe abstraite ne peut être que public ou protégé, et la valeur par défaut est publique
4. la sous-classe doit implémenter la méthode abstraite Class parent, sinon les sous-classes doivent également être définies comme des classes abstraites
5. Les classes abstraites peuvent contenir des attributs, des méthodes et des constructeurs, mais les constructeurs ne peuvent pas être utilisés pour l'instanciation et sont principalement utilisés. être appelé par les sous-classes.
Interface : L'interface en Java est modifiée avec le mot-clé interface. Les caractéristiques sont :
1 L'interface peut contenir des variables et les méthodes sont désignées comme publiques ; static final par Hermit.La méthode est désignée comme public abstract par Hermit (avant JDK1.8>2. L'interface prend en charge l'héritage multiple, c'est-à-dire qu'une interface peut étendre plusieurs interfaces, ce qui résout indirectement le problème) ; d'héritage unique de classes en Java ;
3. Une classe peut implémenter plusieurs interfaces ;
4 De nouvelles fonctionnalités ont été ajoutées aux interfaces dans JDK1.8 :
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!