Surcharge de méthodes sont des méthodes de la même classe qui partagent le même nom, mais accepter les différents types de variables comme arguments. Par exemple, une classe peut contenir des deux "ajouter" méthodes: l'une qui accepte deux valeurs, "ajouter(double a, double b)," et celui qui accepte deux valeurs de type entier, "ajouter(int a, int b)." L'ordinateur automatiquement décide de la méthode à appeler au moment de l'exécution basé sur les types de variables étant passé à la méthode.
la Flexibilité
- méthodes Surchargées donner les programmeurs de la flexibilité nécessaire pour appeler une méthode similaire pour les différents types de données. Si vous travaillez sur un programme de mathématiques, par exemple, vous pouvez utiliser la surcharge de créer plusieurs 'multiplier' classes, dont chacune se multiplie un nombre différent de type d'argument: le plus simple 'se multiplient(int a, int b)' multiplie deux nombres entiers le plus compliqué de la méthode de 'multiplier(double a, int b, int c)' multiplie un double par deux entiers vous pouvez ensuite appeler 'multiplier' sur n'importe quelle combinaison de variables que vous avez créé une méthode surchargée et obtenir le bon résultat. Les constructeurs
- la Surcharge est également utilisé sur les constructeurs pour créer de nouveaux objets à partir de différentes quantités de données. Par exemple, vous pouvez utiliser la surcharge de créer trois différents constructeurs pour une 'Maison' de l'objet avec un numéro de rue, nom de rue et de couleur variables. Le plus simple constructeur de la Maison '()' ne prend pas d'arguments et crée une maison avec défaut ou vide de variables. De plus en plus complexe constructeur, 'la Maison(int houseNumber, Chaîne streetName),' crée une maison avec le numéro et nom de rue, mais un défaut ou d'un vide de couleur. Le plus complexe constructeur, 'la Maison(int houseNumber, Chaîne streetName, Chaîne de couleur),' crée une maison avec toutes les informations spécifiées, ne laissant rien en tant que par défaut. Vous pouvez ensuite créer une maison d'objet sur la base des informations actuellement disponibles, avec l'indisponibilité de l'information laissée en blanc ou en cas de défaut. Références ambiguës
- méthodes Surchargées doit utiliser différents numéros ou les types d'arguments pour éviter toute ambiguïté. Si vous créez deux méthodes de la même classe qui ont le même nom et accepter de deux entiers comme arguments, le compilateur Java sera incapable de distinguer entre les deux, même si les variables d'entrée ont des noms différents. Par exemple, la méthode 'ajouter(int a, int b)' ne peut pas exister dans la même classe que la méthode 'ajouter(int c, int d).' Les Types de retour
- Vous devez définir un type de retour pour chaque méthode surchargée. Les méthodes peuvent avoir différents types de retour par exemple, 'ajouter(int a, int b)' peut renvoyer un nombre entier, alors que 'ajouter(double a, double b)' renvoie un double. Cependant, Java ne peut pas distinguer entre les deux méthodes basées sur leur type de retour. Par conséquent, 'int multiplier(double a, double b)' ne peut pas exister dans la même catégorie que le 'double multiplier(double a, double b).'
Les Avantages-Inconvenients de la Surcharge de Methode en Java
Surcharge de methodes sont des methodes de la meme classe qui partagent le meme nom, mais accepter les differents types de variables comme arguments. Par exemple, une classe peut contenir des deux "ajouter" methodes: l'une qui accepte deux valeurs, "ajouter(double a, double b)," et celui qui accepte deux valeurs de type entier, "ajouter(int a, int b)." L'ordinateur automatiquement decide de la methode a appeler au moment de l'execution base sur les types de variables etant passe a la methode.
la Flexibilite
- methodes Surchargees donner les programmeurs de la flexibilite necessaire pour appeler une methode similaire pour les differents types de donnees. Si vous travaillez sur un programme de mathematiques, par exemple, vous pouvez utiliser la surcharge de creer plusieurs 'multiplier' classes, dont chacune se multiplie un nombre different de type d'argument: le plus simple 'se multiplient(int a, int b)' multiplie deux nombres entiers le plus complique de la methode de 'multiplier(double a, int b, int c)' multiplie un double par deux entiers vous pouvez ensuite appeler 'multiplier' sur n'importe quelle combinaison de variables que vous avez cree une methode surchargee et obtenir le bon resultat. Les constructeurs
- la Surcharge est egalement utilise sur les constructeurs pour creer de nouveaux objets a partir de differentes quantites de donnees. Par exemple, vous pouvez utiliser la surcharge de creer trois differents constructeurs pour une 'Maison' de l'objet avec un numero de rue, nom de rue et de couleur variables. Le plus simple constructeur de la Maison '()' ne prend pas d'arguments et cree une maison avec defaut ou vide de variables. De plus en plus complexe constructeur, 'la Maison(int houseNumber, Chaîne streetName),' cree une maison avec le numero et nom de rue, mais un defaut ou d'un vide de couleur. Le plus complexe constructeur, 'la Maison(int houseNumber, Chaîne streetName, Chaîne de couleur),' cree une maison avec toutes les informations specifiees, ne laissant rien en tant que par defaut. Vous pouvez ensuite creer une maison d'objet sur la base des informations actuellement disponibles, avec l'indisponibilite de l'information laissee en blanc ou en cas de defaut. References ambiguës
- methodes Surchargees doit utiliser differents numeros ou les types d'arguments pour eviter toute ambiguïte. Si vous creez deux methodes de la meme classe qui ont le meme nom et accepter de deux entiers comme arguments, le compilateur Java sera incapable de distinguer entre les deux, meme si les variables d'entree ont des noms differents. Par exemple, la methode 'ajouter(int a, int b)' ne peut pas exister dans la meme classe que la methode 'ajouter(int c, int d).' Les Types de retour
- Vous devez definir un type de retour pour chaque methode surchargee. Les methodes peuvent avoir differents types de retour par exemple, 'ajouter(int a, int b)' peut renvoyer un nombre entier, alors que 'ajouter(double a, double b)' renvoie un double. Cependant, Java ne peut pas distinguer entre les deux methodes basees sur leur type de retour. Par consequent, 'int multiplier(double a, double b)' ne peut pas exister dans la meme categorie que le 'double multiplier(double a, double b).'
Les Avantages-Inconvénients de la Surcharge de Méthode en Java
By commentfaire
Surcharge de méthodes sont des méthodes de la même classe qui partagent le même nom, mais accepter les différents types de variables comme arguments. Par exemple, une classe peut contenir des deux "ajouter" méthodes: l'une qui accepte deux valeurs, "ajouter(double a, double b)," et celui qui accepte deux valeurs de type entier, "ajouter(int a, int b)." L'ordinateur automatiquement décide de la méthode à appeler au moment de l'exécution basé sur les types de variables étant passé à la méthode.