begin process at 2010 02 10 00:09:26
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Java

 > 

Archives

 > 

Au secours

 > 

Problème méthode redefinissante


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Problème méthode redefinissante

mardi 2 novembre 2004 à 21:09:01 | Problème méthode redefinissante

Avidev

Bonjour,
je débute en java, avec l'aide d'un livre,
mais je bloque sur un listing :

class PrintClass {
int x = 0;
int y = 1;

void printMe() {
System.out.println("x \u201agale " + x + ", " + "y \u201agale " + y + ", " + "z \u201agale " + z);
System.out.println("Je suis une instance de la classe " + this.getClass().getName());
}
}

class PrintSubClass extends PrintClass {
int z = 3;


public static void main(String[] arguments) {
PrintSubClass obj = new PrintSubClass();
obj.printMe();
}
}

le compilateur me dis que j'ai une erreur sur la ligne :
System.out.println("Je suis une instance de la classe " + this.getClass().getName());
Il ne connait pas la variable z, mais l'interet de extends est de pouvoir ajouté des variables a tt moment non ?

Désolé si mon problème n'est pas clair

Mat
mardi 2 novembre 2004 à 22:06:05 | Re : Problème méthode redefinissante

thekwint

Est-tu sur que ton erreur ne vient pas du premier println de la methode printMe(). J'ai plus touché au java depuis un petit temps mais je crois qu'en fait, un object de la classe PrintClass possède une méthode qui utilise une variable qui n'est pas définie. En effet, z n'est défini que pour les objects de la classe PrintSubClass.

Ce que je veut dire, c'est qur ta classe PrintClass n'est déjà pas valide elle même.

Une autre façon de faire serait :


class PrintClass {
int x = 0;
int y = 1;

void printMe() {
System.out.println("x \u201agale " + x + ", " + "y \u201agale " + y );
System.out.println("Je suis une instance de la classe " + this.getClass().getName());
}
}

class PrintSubClass extends PrintClass {
int z = 3;


public static void main(String[] arguments) {
PrintSubClass obj = new PrintSubClass();
obj.printMe();
}
void printMe() {
System.out.println("x \u201agale " + x + ", " + "y \u201agale " + y + ", " + "z \u201agale " + z);
System.out.println("Je suis une instance de la classe " + this.getClass().getName());
}

}





En realité, ton exemple n'est pas du tout un cas utile pour des extends. Les cas utiles sont des cas ou les methodes peuvent être complétées.



ex:

void printMe() {
super();
System.out.println("z vaut : " + z);
}

dans la deuxième partie. Toutes les lignes de codes de la classe de depart seront a nouveaux exécutées.

J'espere ne pas m'être trompé. Bonne chance
mercredi 3 novembre 2004 à 09:30:27 | Re : Problème méthode redefinissante

neodante

Administrateur CodeS-SourceS

Neodante

L'erreur est simple : tu utilises une propriétés que tu déclares dans une classe dérivée mais que tu veux utiliser dans la classe mère.

EN POO, tu hérites des éléments de la classe mère vers la classe fille ... et non de la classe fille vers la classe mère ...

A (z)
|
v
B (z est connu)

est valide :

A (v est inconnu)
|
v
B (v)

@+

[Responsable www.neogamedev.com]
mercredi 3 novembre 2004 à 18:07:38 | Re : Problème méthode redefinissante

thekwint

C'est ce que j'ai voulu dire. Je me suis peut-être embrigué dans de long discours dénués de sens iné mais j'esperait avoir été clair. PAS BIEN.
mercredi 3 novembre 2004 à 18:24:24 | Re : Problème méthode redefinissante

neodante

Administrateur CodeS-SourceS

Neodante

lol
Je m'incline pour te laisser l'honneur de résoudre ce problème !!! lol
@+

[Responsable www.neogamedev.com]
mercredi 3 novembre 2004 à 18:33:06 | Re : Problème méthode redefinissante

Avidev

Merci de vous battre pour répondre a ce message , lol
La méthode de thekwint ds le 1er post marche niquel, je la trouvais un peu longue car on répete de fois la méthode void printMe.
Vu que je n'y suis pas arrivé a faire plus cours , j'ai laissé tombé le extends , pour faire une deuxieme class, comme vous me le conseiller
Merci

Ciao


Cette discussion est classée dans : problème, int, system, out, println


Répondre à ce message

Sujets en rapport avec ce message

Lecture ecriture binaire [ par oncle jules ] Salut à tous et à toutes Il me faut lire les données d'un fichier .txt pour le transformer en un fichier binaire. J'ai implémenté tout ça et je vous d probleme dans programme tableau [ par Jarod1980 ] Bonjour tout le monde,J'ai un problème dans mon programme. Ca doit être certainement l'algo qui foire et je ne trouve pas. Mon problème, c'est que je pb Keylistener [ par lenneth666 ] punaiz jdevien fou, j'ai regardé plein de tutoriaux sur lé keylistener et ca ne marche pas. Voici mon code public class Chenille extends JFrame imp Besoin d'aide SVP, casse tete etudiant en action IoI [ par djterrence ] Bonjour, voila j ai un gros probleme je dois faire un programme pour mon cour mais j y arrive vraiment pas donc j aimerais un peut d aide si cela n'es Methode Overriding [ par PY01A0080 ] Bonjour,est ce que ce programme utilise la methode overriding ?J'ai un doute.class Account{int p=4000; int r=9; int t=5;int i=p*r*t;public void calcul Urgent svp un probleme de trie!!!! [ par wissal04 ] avant de commencer bsr a tous,j'ai un probleme de tri,j'ai fais un tableau a une seul dimenssion et je voudrais le trié avant d'afficher son contenue slt [ par samira46 ] voila les codes: 1.la classe du serveur: import java.io.IOException; import java.net.ServerSocket; import java.net.Socket; public class serveur { app en java [ par diwa ] j'ai ce programme ,je veux que les imputs et les outputs doit etre afficher dans une frame , je suis vraiment debutante en java mpublic class VOL{ pub Imprimer une JTable [ par gabsi08aymen ] Bonjour,je veux imprimer un JTable mais le problème c'est que la taille de JTable lors de l'impression devient très petite parcontre lorque j'affiche Probleme graph courbe applet java [ par thesnake201 ] Bonjourj'ai un ptit probleme dans mon applet java. Elle me permet de faire tracer une courbe pour le trafic réseau (j'utilise snmp pour faire ca)mon p


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,406 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales