Signaler

La methode super() en java [Résolu/Fermé]

Posez votre question code32 66Messages postés mercredi 5 novembre 2008Date d'inscription 5 février 2012 Dernière intervention - Dernière réponse le 9 juin 2017 à 12:24 par yaciano
Bonjour, a quoi sert la methde super(String) au niveau de constructeur d'une classe en java?
et merci de me repondre
Afficher la suite 
Utile
+182
plus moins
super() sert à appeler un constructeur de la classe parente d'une classe.
Ceci est rendu nécessaire lorsque qu'on déclare une classe étendant une autre classe, et que celle-ci ne possède pas de constructeur avec les mêmes arguments.
Un exemple valant souvent mieux ... voici un petit programme à essayer. Tu peux t'ammuser à mettre ne commentaire la ligne super(..) et voir l'erreur du compilateur.
Par contre, si t veux le détail des mécanismes sur les constructeurs java, consulte la doc Sun (java.sun.com) ou un bouquin sur java.
J'espère que ceci répond à peu près à ta question. Joyeux Noël !
public class Derivee extends Base
{
/**
* un construteur sans argument
* On est oblige, par la méthode super(String) d'appeler
* le constructeur de la classe parente (classe ici nommée Base)
* parceque celle-ci ne fournit pasde constructeur sans argument.
*/

public Derivee()
{
// appel obligatoire parce que la classe Base ne déclare
// qu'un constructeur avec argument de type String.
super("Inconnu");
}
}
class Base
{
private String nom;
// Constructeur avec une chaîne
public Base(String pnom)
{
nom = pnom;
}
// renvoie le nom
public String getNom()
{
return nom;
}
/* Méthode qui permet le test */
public static void main(String[] args)
{
// Sin lance java avec cette classe, on va obtenir "inconnu"
Derivee une = new Derivee();
System.out.println(une.getNom());
}
}
yaciano- 9 juin 2017 à 12:24
très util merci beaucoup
Répondre

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !