Posez votre question Signaler

Java : constructeurs, help ! [Résolu]

Wenzel 224Messages postés 7 mars 2009Date d'inscription 11 novembre 2010Dernière intervention - Dernière réponse le 28 oct. 2009 à 19:19
Bonjour,
Je suis en train d'apprendre le et je ne comprend pas comment fonctionnent les constructeurs, je m'explique dans un exemple :
nous avons définis en cours une UnPoint suivie d'une classe Unrectangle comme suit :
class UnPoint {
int abscisse,ordonnee;
UnPoint () {
this.abscisse = 0;
this.ordonnee = 0;
}
void translation (int dx ,int dy) {
this.abscisse = this.abscisse + dx;
this.ordonnee = this.ordonnee + dy;
}
}
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
class Unrectangle {
UnPoint coin;
int largeur;
int hauteur;
Unectangle () {
coin = new UnPoint();
largeur = 1;
hauteur = 1;
}
}
seulement que se passe-t-il si je met un nouveau constructeur UnRectangle comme ceci ?
UnRectangle () {
coin = new UnPoint (13);
largeur = 1;
hauteur = 1;
}
Lire la suite 

Java : constructeurs, help »

9 réponses
Réponse
+0
moins plus
Bonjour,
Tu vas avoir une erreur de compilation car tu n'as pas défini de constructeur
public Point(int i) {
//Do something
}


Par contre, si tu définis ce constructeur dans Point, ça va fonctionner.

Cordialement,
Ajouter un commentaire
Réponse
+0
moins plus
Salut,

Un constructeur (ou des constructeurs) doit (doivent) avoir LE MÊME NON QUE LA CLASS.

S'il y a plusieurs constructeurs (surcharge):

Le compilateur distingue les constructeurs en fonction
- de la position des arguments
- de leur nombre
- de leur type

Cordialement,

Dan
Ajouter un commentaire
Réponse
+0
moins plus
merci, ca va dejà mieux ^^
Ajouter un commentaire
Réponse
+0
moins plus
KONNICHIWA,

tu ne peux pas ajouter deux constructeur de meme structure
il faut mettre au moins un sans parametres et l'autre paramétré " UnRectangle(int arg){..}.
sinon tu auras une erreur de compilation.
danimo- 4 oct. 2009 à 21:37
Salut,

On peut avoir autant de constructeurs que nécessaire tous de même non (celui de la classe), avec ou sans paramètres, pour autant il est vrai que la structure soit différente (nombre de param., type, position)...

Cordialement,

Dan
Ajouter un commentaire
Réponse
+0
moins plus
Voilà que le java est plus clair pour moi au niveau des constructeurs, j'ai reussi a comprendre sa structure, avec ses classes en privées ou publiques, qui agissent entre ellesz avec des méthodes...

Merci a tous pour vos réponses !

la seule matière qui me fasse encore peur est l'algorithmie:
je n'arrive a faire aucun exo du cours et le devoir est dans une semaine...

Quelles sont vos méthodes pour créer un algorithme a partir d'un sujet ? Comment faisiez vous lorsque vous étiez étudiant en informatique (comme moi ^^) pour résoudre un problème en faisant un algorithme ?
Ajouter un commentaire
Réponse
+0
moins plus
Voilà que le java est plus clair pour moi au niveau des constructeurs, j'ai réussi a comprendre sa structure, avec ses classes en privées ou publiques, qui agissent entre elles avec des méthodes...

Merci a tous pour vos réponses !

la seule matière qui me fasse encore peur est l'algorithmique:
je n'arrive a faire aucun exo du cours et le devoir est dans une semaine...

Quelles sont vos méthodes pour créer un algorithme a partir d'un sujet ? Comment faisiez vous lorsque vous étiez étudiant en informatique (comme moi ^^) pour résoudre un problème en faisant un algorithme ?
pacorabanix - 28 oct. 2009 à 18:16
je n'ai pas été étudiant en informatique, mais, la première choses à faire, maintenant que tu vois un peu ce qu'un programme peut faire, c'est essayer de faire toi-même (devant une feuille de papier) ce que tu demandes à l'ordinateur.

Une fois que tu as bien compris toi-même comment faire les choses tu peux traduire ça en des boucles, if, etc...


NOTE : un très bon cours de Java (de bon niveau, mais destiné à ceux qui n'y ont jamais touché) est : Data Structures de l'université de Berkeley sur Youtube. Cherche la "Chaîne" Berkeley University, là ils ont une playlist "Data Structures fall" (fall = automne). Si tu comprends un peu l'anglais tu verras je trouve que le gars explique très bien, et il écrit plein de choses au tableau.
Ajouter un commentaire
Réponse
+0
moins plus
Re,

À propos des constructeurs. il faut savoir que toute classe possède au moins un constructeur même si la classe ne dédéfinit pas explicitement de constructeur: c'est le constructeur par défaut sans arguments et qui n’effectue aucune initialisation particulière qui sera invoqué.
Exemple:

LaClasse monObjet; // déclaration
monObjet = new LaClasse(); // création et allocation mémoire


On peut dire que les constructeurs sont des méthodes particulières implicitement void et qui portent le même nom que la classe.
On les distingue immédiatement dans les listes des programmes SI ON À RESPECTÉ LA RÈGLE DE NOMMAGE DES CLASSES (le nom des classes commence par une MAJUSCULE) alors que les méthodes ont un nom qui commence par une minuscule Ex : maMethode() ou mieux le nom commence par un verbe à l'infinitif et en minusclues Ex. faireLecalculDe...(...)

Ici nom de la classe LaClasse et nom du constructeur LaClasse()

Dan
Ajouter un commentaire
Ce document intitulé « Java : constructeurs, help ! » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?