Maison  >  Article  >  Java  >  Comment définir et utiliser des classes et des interfaces abstraites en Java

Comment définir et utiliser des classes et des interfaces abstraites en Java

王林
王林avant
2023-05-03 21:13:051511parcourir

1. Classe abstraite

1. Qu'est-ce qu'une classe abstraite ?

Par exemple, dans la vie, nous classons tous les chiens et les chats dans la même catégorie d'animaux, mais quand on ne parle que d'animaux, on ne sait pas si c'est un chat, un chien ou autre chose. Les animaux sont donc des classes dites abstraites, tandis que les chats et les chiens sont des classes concrètes. Par conséquent, en Java, une méthode sans corps de méthode doit être définie comme une classe abstraite, et si une classe a une méthode abstraite, elle doit être une classe abstraite.

2. Caractéristiques des classes abstraites :

  • Les classes abstraites et les méthodes abstraites doivent être modifiées avec le mot-clé abstract.

  • Les classes abstraites n'ont pas nécessairement de méthodes abstraites, mais les classes avec des méthodes abstraites doivent être des classes abstraites.

  • Les classes abstraites ne peuvent pas être instanciées. Si elles doivent être instanciées, référez-vous à la forme polymorphe et instancier via des sous-classes.

  • Si une sous-classe hérite d'une classe abstraite, vous devez réécrire toutes les méthodes abstraites dans la classe abstraite, ou il doit s'agir d'une classe abstraite.

3. Caractéristiques des membres :

  • Variables membres : peuvent être des variables ou des constantes.

  • Méthode de construction : il existe une méthode de construction, mais elle ne peut pas être instanciée, elle doit donc être effectuée via une sous-classe polymorphe ; le but est d'accéder à la classe parent pour l'initialisation des données de la sous-classe ;

  • Méthode membre : Il peut s'agir d'une classe abstraite : elle limite certains comportements que la sous-classe doit réaliser ; elle peut également être une classe non abstraite, ce qui peut améliorer la réutilisabilité du code.

2. Interface

1. Quelle est l'interface ?

L'interface est une norme de spécification publique, qui est une condition supplémentaire requise pour exprimer une classe, elle peut donc être utilisée tant qu'elle répond à la norme de spécification. L'interface en Java se reflète principalement dans l'abstraction du comportement.

2. Les caractéristiques de l'interface

  • doivent être modifiées avec le mot clé interface.

  • L'interface d'implémentation d'une classe doit être représentée par des implémentations

  • L'interface ne peut pas être instanciée, reportez-vous à la forme polymorphe d'instanciation, appelée polymorphisme d'interface. Par conséquent, les principales formes de polymorphisme sont : le polymorphisme de classe concret, le polymorphisme abstrait et le polymorphisme d’interface.

  • Classe d'implémentation d'interface : soit remplacez la méthode abstraite dans l'interface, soit soyez une classe abstraite.

3. Membres des composants de l'interface

  • 1. Variables membres : ne peuvent être que des constantes, modifiées par 'public static final' par défaut.

  • 2. Méthode de construction : L'interface n'a pas de méthode de construction, car l'interface abstrait principalement le comportement et n'a pas d'existence concrète.

  • Remarque : Si une classe n'a pas de classe parent, elle hérite de la classe Object par défaut.

  • 3. Méthodes membres :

Méthode abstraite : La méthode par défaut de l'interface est une méthode abstraite. La valeur par défaut est un résumé statique public pour modification.

Méthode par défaut : La méthode par défaut est une méthode utilisée lorsque certaines classes d'implémentation doivent ajouter des méthodes. Elle doit être modifiée avec par défaut dans l'interface. Elle n'a pas besoin d'être réécrite dans la classe d'implémentation, mais la valeur par défaut doit être réécrite. à supprimer lors de la réécriture.

Comment définir et utiliser des classes et des interfaces abstraites en Java

Méthode statique : Les méthodes statiques ne peuvent être ajoutées qu'à l'interface et ne peuvent pas être appelées par la classe d'implémentation. Elles ne peuvent être appelées que par le nom de l'interface et modifiées par static.

Comment définir et utiliser des classes et des interfaces abstraites en Java

Méthodes privées : Les méthodes privées sont principalement utilisées dans les interfaces et sont modifiées avec le mot-clé privé. En écrivant le même segment de code dans la méthode privée, la réutilisabilité et la simplicité du code peuvent être améliorées. ne peut être modifié qu'avec des méthodes statiques, tandis que les méthodes non statiques peuvent être modifiées avec des méthodes non statiques et statiques.

Comment définir et utiliser des classes et des interfaces abstraites en Java

4. La relation entre les classes et les abstractions :

Comment définir et utiliser des classes et des interfaces abstraites en Java

5. La différence entre les classes abstraites et les interfaces :

Les classes abstraites sont principalement des abstractions pour les choses, et les interfaces sont principalement des abstractions pour les comportements.

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer