La communauté ALL HTML c'est 58449 membres à ce jour dont 0 inscrits aujourd'hui et 26 depuis une semaine.

Communauté ALL HTML : DrHelmut

Surcharge de méthodes

Cet article est actuellement publié sur le site.

Photo de DrHelmut Article publié le mercredi 06 septembre 2006 par DrHelmut.
Cet article est classé dans les catégories « JAVA »

Dans l'article sur les classes, vous avez vu que l'on pouvait écrire plusieurs constructeurs, par exemple un sans paramètres (constructeur par défaut) et un avec.
Et bien ce principe est apellé la surcharge, et c'est un excellent mécanisme que le langage Java permet !

La machine virtuelle Java (qui interprète le code semi-compilé) est capable de différentier deux méthodes ou plus portant le même nom, pour peu que tous les arguments soient de type différents. (ou dans un ordre différent)

Cela permet d'une part de bénéficier dans l'API Java (les librairies) d'un panel de fonctions adaptés à tous les types, donc pratique d'utilisation et d'autre part cela permet une grande souplesse du code.

Un exemple pratique simple : une méthode renvoyant le carré d'un nombre
//méthode pour un entier public int square(int a) { return a*a; } //méthode pour un réel public double square(double a) { return a*a; }
ainsi pas la peine d'apeller des méthodes aux noms différents à chaque fois (squareInt, squareDouble..) quelque soit le type du nombre dont vous voulez le carré il suffira de faire " monNombre=square(monNombre) ".
C'est d'ailleurs le cas des méthodes de la classe Maths de l'API Java.

Mais ce n'est qu'un début !
Voyons un autre exemple : un client FTP.
/* méthode pour se connecter à l'hôte [url] sur le port spécifié */ public void connect(String url, int port) { // } //connection sur le port par défaut public void connect(String url) { connect(url,20); }

L'utilisateur de la classe ne connait pas forcément le par défaut d'un serveur FTP, alors vous devez penser à lui simplifier la vie. Ca ne coute pas grand chose à faire en plus et c'est une bonne habitude à prendre (en Java du moins).

Sources de l'information : moi et mes cours de Java de 1ère année de DUT info ^-^

ACCÉS COMMUNAUTÉ

Rejoignez ALL HTML

Publiez vos articles, actualités, communiqués ... Donnez votre avis, partagez votre réseau, rencontrez d'autres membres et participez à la vie de la communauté.