[JAVA] Glossaire: surcharge

Qu'est-ce que la surcharge?

・ Définition multiple, surcharge ・ Jouez dans la même classe (?) ・ Une des techniques de programmation orientée objet -Définissez plusieurs méthodes avec le même nom mais des arguments et des valeurs de retour différents. -Définir plusieurs fonctions (méthodes) avec le même nom et les distinguer par la différence d'arguments.

-Définir plusieurs méthodes avec le même nom avec différents types d'arguments à l'avance. → Vous pouvez faire un choix lors de l'appel de la méthode → La méthode appropriée peut être appelée selon le type d'argument / valeur de retour → Vous pouvez réduire le branchement conditionnel dans la méthode check au moment de l'appel → Améliore la lisibilité et la maintenabilité

【mérite】 ・ Prévention des méthodes compliquées ・ Prévention de la description de masse de méthodes similaires et non similaires

【Démérite】 ・ S'il augmente trop, cela peut créer une méthode qui rend difficile la compréhension de la fonction.

"L'essence de la surcharge est Elle doit être appliquée à la méthode ou au constructeur dans le cas «d'arguments, de valeurs de retour, les comportements individuels sont différents, mais l'essence des comportements est la même». La surcharge de la méthode dans le cas de "le comportement est le même sauf pour le type d'argument" est susceptible de prêter à confusion. "

C'est vrai. C'est un peu difficile. Si vous voulez le reformuler dans vos propres mots

Il n'est pas préférable de créer de nombreuses méthodes qui "ont le même comportement mais des types d'arguments différents" car cela crée de la confusion. Il doit être utilisé lorsque "les arguments, les valeurs de retour et le comportement après l'appel sont complètement différents, mais l'essence est la même". La cible est les méthodes et les constructeurs. Un constructeur est une méthode créée et exécutée au moment de l'instanciation.

Merveille. Veuillez signaler toute erreur de reconnaissance.

Tant que j'entends les voix des gens autour de moi qui ont réellement commencé à coder (malheureusement je ne l'ai pas encore mis en place et je n'ai pas de plans), je peux identifier le «type» à la fois conceptuellement et en termes de contenu commercial. Il semble que ce soit difficile. Je me demande si tout cela n'est que pratique et expérience.

Les remplacements n'ont pas encore été étudiés, je voudrais donc les écrire ici ou ailleurs.

Recommended Posts

Glossaire: surcharge
Surcharge
[Java] Surcharge
[Java] [Basic] Glossaire