Programmation Objet Java
nicotoy3
-
UaLShark Messages postés 191 Date d'inscription Statut Membre Dernière intervention -
UaLShark Messages postés 191 Date d'inscription Statut Membre Dernière intervention -
Bonsoir à tous !
J'ai besoin de votre aide concernant la programmation objet en Java...
Voilà un exemple illustrant ma question :
class Voiture {
//Attributs
private String marque ;
private int annee ;
private String couleur ;
//Constructeurs
Voiture() {
marque="Peugeot" ;
annee=1996 ;
couleur="rouge" ;
}
VoitureBis() {
this.marque="Peugeot" ;
this.annee=1996 ;
this.couleur="rouge" ;
}
Quelle est la différence entre les deux constructeurs ???
Pourquoi inclure un "this" dans les constructeurs et méthodes de la classe ????
Par avance, merci de vos réponses.
Nicotoy3
J'ai besoin de votre aide concernant la programmation objet en Java...
Voilà un exemple illustrant ma question :
class Voiture {
//Attributs
private String marque ;
private int annee ;
private String couleur ;
//Constructeurs
Voiture() {
marque="Peugeot" ;
annee=1996 ;
couleur="rouge" ;
}
VoitureBis() {
this.marque="Peugeot" ;
this.annee=1996 ;
this.couleur="rouge" ;
}
Quelle est la différence entre les deux constructeurs ???
Pourquoi inclure un "this" dans les constructeurs et méthodes de la classe ????
Par avance, merci de vos réponses.
Nicotoy3
A voir également:
- Programmation Objet Java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- Java apk - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
3 réponses
il n'y a aucune différence !
Voiture() {
marque="Peugeot" ;
annee=1996 ;
couleur="rouge" ;
} // this est implicite ici
VoitureBis() {
this.marque="Peugeot" ;
this.annee=1996 ;
this.couleur="rouge" ;
} //this est explicite
d'une façon générale tu peux le omettre 'this' sauf dans un cas tres précis qui est
dans un cas d'héritage, un attribut avec le meme nom existe dans une des classe meres
pour modifier l'attribut de la classe mere tu agis avec super
pour modifier l'attribut de la classe en cours utiliser this(ou tu peux le omettre mais pour des raisons de visibilité il est conseille du'tiliser ce mot clef)
Voiture() {
marque="Peugeot" ;
annee=1996 ;
couleur="rouge" ;
} // this est implicite ici
VoitureBis() {
this.marque="Peugeot" ;
this.annee=1996 ;
this.couleur="rouge" ;
} //this est explicite
d'une façon générale tu peux le omettre 'this' sauf dans un cas tres précis qui est
dans un cas d'héritage, un attribut avec le meme nom existe dans une des classe meres
pour modifier l'attribut de la classe mere tu agis avec super
pour modifier l'attribut de la classe en cours utiliser this(ou tu peux le omettre mais pour des raisons de visibilité il est conseille du'tiliser ce mot clef)
Salut,
Le deuxième constructeur doit vous générer une erreur pendant la compilation de genre "Ereur dans la déclaration d'une méthode: type de retour non défini".
Le construteur doit porter le même nom de la classe sinon il sera concédéré comme une méthode.
Le deuxième constructeur doit vous générer une erreur pendant la compilation de genre "Ereur dans la déclaration d'une méthode: type de retour non défini".
Le construteur doit porter le même nom de la classe sinon il sera concédéré comme une méthode.
re tarek_dotzero ça va de soit que le constructeur a le meme non que la classe et sans type de retour!
je crois que nicotoy3 veut savoir à quoi sert le this!
bein sinon un constructeur doit
1- avoir le nom de la classe
2- sans type de retour
3- les règles de surcharges s'appliquent sur le constructeur
pas de
voiture()
{
marque = "machin";
}
voiture()
{ num =99999;
}
je crois que nicotoy3 veut savoir à quoi sert le this!
bein sinon un constructeur doit
1- avoir le nom de la classe
2- sans type de retour
3- les règles de surcharges s'appliquent sur le constructeur
pas de
voiture()
{
marque = "machin";
}
voiture()
{ num =99999;
}