"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Objets de référence d'élément via leurs interfaces

Objets de référence d'élément via leurs interfaces

Publié le 2024-11-06
Parcourir:481

Item  Referencie os objetos através das interfaces deles

Préférence pour les interfaces comme types de référence :
Si une interface appropriée existe, vous devez référencer les objets via celle-ci plutôt que via la classe concrète.
Cela s'applique aux paramètres, aux valeurs de retour, aux variables et aux champs.

Flexibilité dans l'utilisation des interfaces :
L'utilisation d'interfaces vous permet de modifier l'implémentation sans affecter le code.
Exemple : passer de LinkedHashSet à HashSet ou TreeSet, changez simplement le constructeur.

Quand NE PAS utiliser les interfaces :
Fonctionnalité spécifique à l'implémentation :
Si une implémentation propose quelque chose qui n'est pas requis par l'interface (par exemple, LinkedHashSet garantit l'ordre d'itération, mais pas HashSet).

Sans interface appropriée :
Certaines classes comme String ou BigInteger n'ont pas d'interfaces équivalentes et doivent être utilisées directement.

Cadres basés sur les classes :
Exemple : OutputStream dans le package java.io est référencé via une classe abstraite, pas une interface.

Méthodes spécifiques à la mise en œuvre :
Exemple : PriorityQueue implémente Queue, mais possède une méthode comparator() non présente dans Queue. Utilisez la classe uniquement si vous avez besoin de cette méthode supplémentaire.

Avantage:
L'utilisation d'interfaces rend le programme plus flexible et modulaire, vous permettant de modifier facilement les implémentations sans casser le code existant.

Exemples de code
Bon exemple : utiliser l'interface comme type

Set s = new LinkedHashSet();

Mauvais exemple : utiliser la classe concrète comme type

LinkedHashSet s = new LinkedHashSet();

Flexibilité : modifier l'implémentation sans affecter le code

Set s = new TreeSet();

Exemple d'utilisation d'une classe finale comme String

String str = "Hello";

Exemple d'utilisation d'une classe de base de framework

OutputStream output = new FileOutputStream("file.txt");

Déclaration de sortie Cet article est reproduit sur : https://dev.to/giselecoder/item-64-referencie-os-objetos-atraves-das-interfaces-deles-4ln0?1 En cas de violation, veuillez contacter [email protected] pour le supprimer
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3