Le mot-clé default en Java a de multiples usages, principalement dans les instructions de commutation et les méthodes d'interface. Il fournit un cas par défaut dans les instructions de commutation et permet aux méthodes des interfaces d'avoir une implémentation par défaut.
Utilisation
1. Cas par défaut dans les instructions de commutation
Dans une instruction switch, le mot-clé default spécifie le bloc de code à exécuter si aucun cas ne correspond à l'expression switch.
2. Méthodes par défaut dans les interfaces
Dans les interfaces, le mot-clé default permet de créer des méthodes avec une implémentation par défaut. Cette fonctionnalité, introduite dans Java 8, permet aux interfaces d'évoluer sans casser les implémentations existantes.
Syntax
Déclaration de l'interrupteur
switch(expression){casevalue1:// code blockbreak;casevalue2:// code blockbreak;default:// default code block}Propulsé par
Méthodes par défaut dans les interfaces
publicinterfaceInterfaceName{defaultvoidmethodName(){// default implementation}}Propulsé par
Exemples
Exemple 1 : Cas par défaut dans l'instruction de commutation
publicclassDefaultSwitchExample{publicstaticvoidmain(String[] args){
int day =5;switch(day){case1:
System.out.println("Monday");break;case2:
System.out.println("Tuesday");break;// other casesdefault:
System.out.println("Invalid day");break;}}}Propulsé par
Dans cet exemple, le cas default est exécuté si la valeur de day ne correspond à aucun des cas spécifiés.
Exemple 2 : Méthode par défaut dans l'interface
publicinterfaceMyInterface{defaultvoiddisplay(){
System.out.println("Default display method");}}publicclassDefaultMethodExampleimplementsMyInterface{publicstaticvoidmain(String[] args){
DefaultMethodExample example =newDefaultMethodExample();
example.display();// Calls the default method}}Propulsé par
Ici, l'interface MyInterface a une méthode par défaut display(). La classe DefaultMethodExample implémente cette interface mais ne surcharge pas la méthode display(), de sorte que l'implémentation par défaut est utilisée.
Exemple 3 : Surcharge de la méthode par défaut
publicinterfaceMyInterface{defaultvoiddisplay(){
System.out.println("Default display method");}}publicclassOverrideDefaultMethodExampleimplementsMyInterface{
@Override
publicvoiddisplay(){
System.out.println("Overridden display method");}publicstaticvoidmain(String[] args){
OverrideDefaultMethodExample example =newOverrideDefaultMethodExample();
example.display();// Calls the overridden method}}Propulsé par
Dans cet exemple, la classe OverrideDefaultMethodExample remplace la méthode par défaut display() fournie par l'interface MyInterface.
Conseils et bonnes pratiques
Énoncés sur les commutateurs: Incluez toujours un cas default dans les instructions de commutation pour gérer les valeurs inattendues.
Évolution de l'interface: Utilisez les méthodes par défaut dans les interfaces pour ajouter de nouvelles méthodes sans casser les implémentations existantes.
Gestion de l'héritage multiple: Lorsque plusieurs interfaces ont des méthodes par défaut portant le même nom, la classe qui les met en œuvre doit résoudre l'ambiguïté en surchargeant la méthode.
Passer outre avec prudence: Lorsque vous remplacez des méthodes par défaut, assurez-vous que la nouvelle implémentation ne rompt pas le contrat existant de l'interface.
Documentation: Documentez clairement le comportement des méthodes par défaut afin d'éviter toute confusion pour les utilisateurs de l'interface.
Le mot-clé
defaulten Java a de multiples usages, principalement dans les instructions de commutation et les méthodes d'interface. Il fournit un cas par défaut dans les instructions de commutation et permet aux méthodes des interfaces d'avoir une implémentation par défaut.Utilisation
1. Cas par défaut dans les instructions de commutation
Dans une instruction switch, le mot-clé
defaultspécifie le bloc de code à exécuter si aucun cas ne correspond à l'expression switch.2. Méthodes par défaut dans les interfaces
Dans les interfaces, le mot-clé
defaultpermet de créer des méthodes avec une implémentation par défaut. Cette fonctionnalité, introduite dans Java 8, permet aux interfaces d'évoluer sans casser les implémentations existantes.Syntax
Déclaration de l'interrupteur
Méthodes par défaut dans les interfaces
Exemples
Exemple 1 : Cas par défaut dans l'instruction de commutation
Dans cet exemple, le cas
defaultest exécuté si la valeur dedayne correspond à aucun des cas spécifiés.Exemple 2 : Méthode par défaut dans l'interface
Ici, l'interface
MyInterfacea une méthode par défautdisplay(). La classeDefaultMethodExampleimplémente cette interface mais ne surcharge pas la méthodedisplay(), de sorte que l'implémentation par défaut est utilisée.Exemple 3 : Surcharge de la méthode par défaut
Dans cet exemple, la classe
OverrideDefaultMethodExampleremplace la méthode par défautdisplay()fournie par l'interfaceMyInterface.Conseils et bonnes pratiques
defaultdans les instructions de commutation pour gérer les valeurs inattendues.