Appel en JAVA
Résolu/Fermé
yosri.tunisia
Messages postés
3
Date d'inscription
dimanche 7 octobre 2007
Statut
Membre
Dernière intervention
30 septembre 2008
-
29 août 2008 à 16:45
hafidodido Messages postés 40 Date d'inscription vendredi 15 août 2008 Statut Membre Dernière intervention 11 octobre 2008 - 3 sept. 2008 à 17:36
hafidodido Messages postés 40 Date d'inscription vendredi 15 août 2008 Statut Membre Dernière intervention 11 octobre 2008 - 3 sept. 2008 à 17:36
A voir également:
- Appel en JAVA
- Appel anonyme - Guide
- Waptrick java football - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Jeux java itel football - Télécharger - Jeux vidéo
- Renvoi d'appel ooredoo - Forum Mobile
10 réponses
Mimiste
Messages postés
1149
Date d'inscription
samedi 17 mai 2008
Statut
Membre
Dernière intervention
6 mars 2016
206
29 août 2008 à 17:16
29 août 2008 à 17:16
Salut
Cette fonction article est le constructeur de ta classe, tu l'appelle de quelle manière ?
Cette fonction article est le constructeur de ta classe, tu l'appelle de quelle manière ?
hafidodido
Messages postés
40
Date d'inscription
vendredi 15 août 2008
Statut
Membre
Dernière intervention
11 octobre 2008
10
Modifié par 00lina00 le 24/07/2010 à 00:21
Modifié par 00lina00 le 24/07/2010 à 00:21
Slt
voila la correction
public class article {
protected int code;
protected String marque;
protected double prix_unitaire;
public article(int c, double p){
code=c;
prix_unitaire=p;
}
public article(int c, double p, String m){
this(c,p);
marque=m;
}
}
parce que vous appelez le constructeur de la classe
voila la correction
public class article {
protected int code;
protected String marque;
protected double prix_unitaire;
public article(int c, double p){
code=c;
prix_unitaire=p;
}
public article(int c, double p, String m){
this(c,p);
marque=m;
}
}
parce que vous appelez le constructeur de la classe
si tu veux etre plus simple :
public class article {
protected int code;
protected String marque;
protected double prix_unitaire;
public article(int c, double p){
this.code=c;
this.prix_unitaire=p;
}
public article(int c, double p, String m){
this.code=c;
this.prix_unitaire=p;
this.marque=m;
}
public class article {
protected int code;
protected String marque;
protected double prix_unitaire;
public article(int c, double p){
this.code=c;
this.prix_unitaire=p;
}
public article(int c, double p, String m){
this.code=c;
this.prix_unitaire=p;
this.marque=m;
}
arth
Messages postés
9374
Date d'inscription
mardi 27 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2016
1 291
30 août 2008 à 10:26
30 août 2008 à 10:26
Normale que ça ne marche pas et en plus le code est lourd car tu mets deux constructeurs alors qu'un seul aurait suffit.
En effet tu mets directement article(c,p); or article n'est pas une fonction mais le constructeur de ta classe article et ne peut être utilisé que pour créer un nouvel objet "article" via le code "new article(val1,val2);"
En effet tu mets directement article(c,p); or article n'est pas une fonction mais le constructeur de ta classe article et ne peut être utilisé que pour créer un nouvel objet "article" via le code "new article(val1,val2);"
Posotaz
Messages postés
489
Date d'inscription
samedi 23 juin 2007
Statut
Membre
Dernière intervention
19 juin 2011
225
>
yosri.tunisia
31 août 2008 à 00:21
31 août 2008 à 00:21
Pour appuyer la remarque de "Marco La Baraque", j'irai plus loin en disant au contraire qu'on sait très bien ce que tu as voulu faire ; les noms des propriétés sont suffisamment explicites pour savoir qu'il s'agit d'articles caractérisés par un code, un prix unitaire, et optionellement une marque (certains articles n'ont pas de marque). Tu ne peux pas dire qu'il n'est pas nécessaire juste comme ça... il est évident que seule une analyse du problème peut t'aider à savoir si oui ou non tu as besoin du constructeur sans la "marque"... même si utiliser "null" lors de l'appel du constructeur complet peut faire l'affaire.
arth
Messages postés
9374
Date d'inscription
mardi 27 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2016
1 291
>
Posotaz
Messages postés
489
Date d'inscription
samedi 23 juin 2007
Statut
Membre
Dernière intervention
19 juin 2011
31 août 2008 à 17:38
31 août 2008 à 17:38
Oui m'enfin considère un affichage de null je pense que ça va pas le faire derrière. Mettre "" me semble plus judicieux que même.
Posotaz
Messages postés
489
Date d'inscription
samedi 23 juin 2007
Statut
Membre
Dernière intervention
19 juin 2011
225
>
arth
Messages postés
9374
Date d'inscription
mardi 27 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2016
1 sept. 2008 à 01:38
1 sept. 2008 à 01:38
Salut, on ne parle pas d'affichage mais de l'état d'un objet à un moment donné. Il est évident que lors de l'affichage, on testera si la valeur de la propriété est nulle pour ne pas afficher "null". Ce que je voulais signifier est l'appel du constructeur complet à la place du constructeur à deux arguments (sans la marque) => utiliser le constructeur complet en passant "null" pour la marque revient à l'identique que d'appeler le constructeur sans la marque puisque la propriété "marque" n'est jamais initialisée autrement.
Ensuite je ne suis pas d'accord avec ta remarque : Null signifie "non défini" tandis qu'une chaîne vide signifie une chaine vide. Si tu as des notions en bases de données tu verras que la distinction est très importante, d'ailleurs c'est lors de la définition d'un champ qu'on doit décider si ce champ doit obligatoirement accepter une valeur ou pas forcément. Une chaîne vide est une valeur et il est inutile de dépenser la création qu'un objet String plutôt que de laisser une variable sans valeur (pas d'objet, donc pas d'emplacement mémoire).
Ensuite je ne suis pas d'accord avec ta remarque : Null signifie "non défini" tandis qu'une chaîne vide signifie une chaine vide. Si tu as des notions en bases de données tu verras que la distinction est très importante, d'ailleurs c'est lors de la définition d'un champ qu'on doit décider si ce champ doit obligatoirement accepter une valeur ou pas forcément. Une chaîne vide est une valeur et il est inutile de dépenser la création qu'un objet String plutôt que de laisser une variable sans valeur (pas d'objet, donc pas d'emplacement mémoire).
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
hafidodido
Messages postés
40
Date d'inscription
vendredi 15 août 2008
Statut
Membre
Dernière intervention
11 octobre 2008
10
Modifié par 00lina00 le 24/07/2010 à 00:22
Modifié par 00lina00 le 24/07/2010 à 00:22
slt,
Si vous avez lit bien les réponses, je pense que la mienne est la réponse que vous avez besoin d'après l'enoncé.
et je l'ai compilé avec aucun erreur.
Si vous avez lit bien les réponses, je pense que la mienne est la réponse que vous avez besoin d'après l'enoncé.
et je l'ai compilé avec aucun erreur.
Marco la baraque
Messages postés
996
Date d'inscription
vendredi 9 mai 2008
Statut
Contributeur
Dernière intervention
5 novembre 2009
328
30 août 2008 à 23:12
30 août 2008 à 23:12
Bonsoir Hafidodido,
Je suis d'accord, ton code est la réponse à la question.
@Tsou : Ton code est peut-être "plus simple", mais il est moins bien que celui de Hafidodido car tu n'a pas de factorisation de code.
@Arth : Désolé, mais cette fois je ne suis pas tout à fait d'accord avec toi :). Je ne comprends pas pourquoi tu dis que le code est plus lourd parce qu'il y a deux constructeurs. Dans son exemple il ne montre l'utilisation que d'un seul, mais peut-être a-t-il besoin du second dans des autres classes. On ne peut donc pas juger de ce critère à cause du peu de visibilité qu'on a.
@yosri.tunisia : Pas de souci si tu as besoin d'aide, je pense qu'il y a quelques gens qui sont assez compétents pour pouvoir t'aider. N'hésite pas à poster si tu es bloqué.
Cordialement,
Je suis d'accord, ton code est la réponse à la question.
@Tsou : Ton code est peut-être "plus simple", mais il est moins bien que celui de Hafidodido car tu n'a pas de factorisation de code.
@Arth : Désolé, mais cette fois je ne suis pas tout à fait d'accord avec toi :). Je ne comprends pas pourquoi tu dis que le code est plus lourd parce qu'il y a deux constructeurs. Dans son exemple il ne montre l'utilisation que d'un seul, mais peut-être a-t-il besoin du second dans des autres classes. On ne peut donc pas juger de ce critère à cause du peu de visibilité qu'on a.
@yosri.tunisia : Pas de souci si tu as besoin d'aide, je pense qu'il y a quelques gens qui sont assez compétents pour pouvoir t'aider. N'hésite pas à poster si tu es bloqué.
Cordialement,
yosri.tunisia
Messages postés
3
Date d'inscription
dimanche 7 octobre 2007
Statut
Membre
Dernière intervention
30 septembre 2008
3 sept. 2008 à 11:58
3 sept. 2008 à 11:58
Merci pour Mimiste, Arth, Tsou, Hafidodido, Marco la baraque (pour bien en resume car vraiment j' avais besoin pour bien m'eclairer les # suggestions) .
Mnt que le code est correcte g besoin de m'expliquer comment pourrais-je faire son executable (sans acceder au code du programme a chaque fois et executer).
Merci d'avance amis.
Mnt que le code est correcte g besoin de m'expliquer comment pourrais-je faire son executable (sans acceder au code du programme a chaque fois et executer).
Merci d'avance amis.
hafidodido
Messages postés
40
Date d'inscription
vendredi 15 août 2008
Statut
Membre
Dernière intervention
11 octobre 2008
10
3 sept. 2008 à 17:33
3 sept. 2008 à 17:33
slt,
vous pouvez generer un jar(executable par la machine vertuelle) par la commande jar :
vous pouvez generer un jar(executable par la machine vertuelle) par la commande jar :
hafidodido
Messages postés
40
Date d'inscription
vendredi 15 août 2008
Statut
Membre
Dernière intervention
11 octobre 2008
10
3 sept. 2008 à 17:35
3 sept. 2008 à 17:35
jar cvf nomfichier.jar dossier de vos fichiers\*
hafidodido
Messages postés
40
Date d'inscription
vendredi 15 août 2008
Statut
Membre
Dernière intervention
11 octobre 2008
10
3 sept. 2008 à 17:36
3 sept. 2008 à 17:36
"*:désigne les fichiers classe"
bon courage.
bon courage.