Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Parade Methode static pour lire un champ d'instance

9 réponses
Avatar
Chat
Bonjour,
je suis en galère je suis obligé d'utiliser une méthode statique, mais
elle doit imperativement lire un champ d'une classe dont elle recoit un
pointeur;or c pas possible;



//* constructeur */
public manageGraphics(MainWindow ptr_MainWindow)
{
this.a_isoList=new Vector(5,1);
this.a_ptr_MainWindow=ptr_MainWindow; //pointeur sur une fenetre
this.cercles=new statusCircle();
}

//* ma methode *//
public static int getAuth()
{
if(a_ptr_MainWindow.jCheckBox4.isSelected())// et ça c interdit ça fait
une erreur
{
if(a_ptr_MainWindow.jCheckBox5.isSelected())
{
return (30);
}
else
{
return (10);
}
}
else
{
a_ptr_MainWindow.jCheckBox5.setEnabled(false);
return (00);
}
}


est ce que vous connaissez une parade pour lire un champ a partir d'une
methode static???????
Merci

9 réponses

Avatar
Kupee
Chat wrote:
je suis en galère je suis obligé d'utiliser une méthode statique, mais
elle doit imperativement lire un champ d'une classe dont elle recoit un
pointeur;or c pas possible;



//* constructeur */
public manageGraphics(MainWindow ptr_MainWindow)
{
this.a_isoList=new Vector(5,1);
this.a_ptr_MainWindow=ptr_MainWindow; //pointeur sur une fenetre
this.cercles=new statusCircle();
}

//* ma methode *//
public static int getAuth()
{
if(a_ptr_MainWindow.jCheckBox4.isSelected())// et ça c interdit ça
fait une erreur
{
if(a_ptr_MainWindow.jCheckBox5.isSelected())
{
return (30);
}
else
{
return (10);
}
}
else
{
a_ptr_MainWindow.jCheckBox5.setEnabled(false);
return (00);
}
}


est ce que vous connaissez une parade pour lire un champ a partir d'une
methode static???????


Ba soit tu lui passe en paramètre l'instance dont tu veux lire le champ,
soit tu rends le champ static (si possible) soit tu as un problème de
conception

Avatar
Chat
Kupee wrote:
Chat wrote:

je suis en galère je suis obligé d'utiliser une méthode statique, mais
elle doit imperativement lire un champ d'une classe dont elle recoit
un pointeur;or c pas possible;



//* constructeur */
public manageGraphics(MainWindow ptr_MainWindow)
{
this.a_isoList=new Vector(5,1);
this.a_ptr_MainWindow=ptr_MainWindow; //pointeur sur une
fenetre
this.cercles=new statusCircle();
}

//* ma methode *//
public static int getAuth()
{
if(a_ptr_MainWindow.jCheckBox4.isSelected())// et ça c interdit ça
fait une erreur
{ if(a_ptr_MainWindow.jCheckBox5.isSelected())
{
return (30);
}
else
{
return (10);
}
}
else
{
a_ptr_MainWindow.jCheckBox5.setEnabled(false);
return (00);
}
}


est ce que vous connaissez une parade pour lire un champ a partir
d'une methode static???????



Ba soit tu lui passe en paramètre l'instance dont tu veux lire le champ,
soit tu rends le champ static (si possible) soit tu as un problème de
conception
ni la première , ni la seconde solution me convienne, et le pb de

conception c surement ça, mais comment on fait pour eviter ce genre de
pb à la conception???


Avatar
Kupee
Chat wrote:
ni la première , ni la seconde solution me convienne, et le pb de
conception c surement ça, mais comment on fait pour eviter ce genre de
pb à la conception???


euh ben pourquoi ta méthode getAuth() doit elle être static ?

Avatar
Chat
Kupee wrote:

Chat wrote:

ni la première , ni la seconde solution me convienne, et le pb de
conception c surement ça, mais comment on fait pour eviter ce genre de
pb à la conception???



euh ben pourquoi ta méthode getAuth() doit elle être static ?
parsqu'elle est appelée a partir d'une fonction native et je peux pas

garder de ref. sur un objet donc une fonction static c l'ideal


Avatar
Frederic WOEHL
Salut,

Il suffit que ton a_ptr_MainWindow soit static aussi...

FRED

Chat wrote:

Kupee wrote:

Chat wrote:

ni la première , ni la seconde solution me convienne, et le pb de
conception c surement ça, mais comment on fait pour eviter ce genre de
pb à la conception???



euh ben pourquoi ta méthode getAuth() doit elle être static ?
parsqu'elle est appelée a partir d'une fonction native et je peux pas

garder de ref. sur un objet donc une fonction static c l'ideal




Avatar
captainpaf
salut,

on va dire que je chipote mais ptr_MainWindow est une référence et pas un
pointeur. je trouve donc le nom assez mal choisi.



---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.605 / Virus Database: 385 - Release Date: 01/03/2004
Avatar
Vincent Brabant
salut,

on va dire que je chipote mais ptr_MainWindow est une référence et pas un
pointeur. je trouve donc le nom assez mal choisi.

Si c'était vraiment des références et pas des pointeurs, je devrais recevoir une NULL REFERENCE EXCEPTION et non pas les célèbres null pointer exceptions.





---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.605 / Virus Database: 385 - Release Date: 01/03/2004





--
Vincent Brabant
----------------
http://www.netbeans.org/index_fr.html
http://vbrabant-fr.skynetblogs.be

Avatar
captainpaf
"Vincent Brabant" a écrit dans le message de
news: 404662c3$0$323$
salut,

on va dire que je chipote mais ptr_MainWindow est une référence et pas
un


pointeur. je trouve donc le nom assez mal choisi.

Si c'était vraiment des références et pas des pointeurs, je devrais

recevoir une NULL REFERENCE EXCEPTION et non pas les célèbres null pointer

exceptions.


--
Vincent Brabant
----------------
http://www.netbeans.org/index_fr.html
http://vbrabant-fr.skynetblogs.be

Ah oui bien sûr, vu sous cet angle ;-). Comme quoi personne n'est à l'abri

d'un nommage approximatif.
javadoc :
"...NullPointeurException
Thrown when an application attempts to use null in a case where an object is
required...."


Avatar
Kupee
Vincent Brabant wrote:
Si c'était vraiment des références et pas des pointeurs, je devrais
recevoir une NULL REFERENCE EXCEPTION et non pas les célèbres null
pointer exceptions.


C'est un vieux débat je crois, et maintenant il serait difficile de
changer le nom de l'exception