[JAVA] classe Boolean

classe Boolean [JAVA] - Programmation

Marsh Posté le 22-01-2002 à 22:59:55    

Bonjour :hello: ,
Comment peut t'on modifier la valuer booléenne d'un objet de ce type?  
J'ai regardé dans la doc et il n'y a que des méthodes de lecture ( et pas d'altération...)
Merci :bounce:

Reply

Marsh Posté le 22-01-2002 à 22:59:55   

Reply

Marsh Posté le 22-01-2002 à 23:10:16    

normal : c'est un concept objet.
 
Il n'existe que 2 instances possibles pour un "objet" booléen. une instance qui sera VRAI et une AUTRE qui sera FAUSSE. En "objet", ca n'aurait aucune signification de vouloir changer la valeur de VRAI pour lui donner une valeur qui est celle de FAUSSE.
 
je suis pas sur d'avoir été très clair. On va prendre un exemple naturel : la classe Voiture.
 
Dans la nature, ca n'a aucun sens de dire "je donne à ma Clio la même valeur que la Mercedes de mon voisin". 'C'est à dire en notation java maClio.setValue(mercedesDuVoisin.getValue())  
 
Les 2 voitures sont des entités différentes et tu ne peut pas en affecter les caractéristiques de l'une à une autre...
 
Ben en "objet" c'est pareil.
 
Remarque : c'est pareil pour la classe Integer : il n'y a pas de méthode setIntValue().
 
t'as compris ??? (je suis tjs pas sur d'avoir été clair ;))
 
remarque : tu peux très facilement te créer une classe Booleen qui se comporte comme tu le souhaites : un objet pouvant contenir une valeur vrai ou fausse


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 22-01-2002 à 23:13:12    

Merci beaucoup Benou,
T'inquiètes pas tu as été clair. Mais comme j'ai besoin de passé un Booléen en paramètre d'une fonction je crois que je vais créer ma propre classe comme tu le dis. (Pourquoi j'y ai pas pensé? lol :gun: )

Reply

Marsh Posté le 22-01-2002 à 23:18:31    

C'est une méthode qui va modifier un booléen passé en paramètre ???? :??:
 
bizarre ... pkoi tu fais pas une méthode qui retourne un booléen ? (et tu affecteras ensuite la valeur dans l'objet que tu veux)
 
Et puis je t'avouerai que je ne me suis JAMAIS servi de la classe BOOLEAN : autant utiliser le type primitif boolean...
faire un objet pour stocker uniquement un booléen ca a pas beaucoup d'intérêt ...


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 22-01-2002 à 23:35:02    

Oui, mais la fonction retourne déjà quelque chose d'autre.
Donc à part une classe qui a juste un booléen , je ne vois pas...
Merci pour ton aide précieuse ;) :hello:

Reply

Marsh Posté le 22-01-2002 à 23:39:48    

bizare quand même ...
à première vu, ca me semble pas très propre  
tu peux pas séparer ca en 2 fonctions ? ou rajouter le booléen dans l'objet que tu retournes ?
 
C'est pas pour retourner une valeur d'erreur au moins (true si ca s'est bien passé, false sinon) ???
je dis ca parce que ca pourrait être le reflexe d'un programmeur C qui se met au Java ...


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 23-01-2002 à 00:41:41    

Euh, si, le booleen retourne (pas celui dont je parlait pour le mettre en parametre, mais celui que la fonction retourne deja), c'est pour voir si ca c'est bien passé...
Pourquoi, y faut pas faire ca en Java? :ange:  
Je sais que c'est pas tres tres propre, mais il est tard, et je chercherai une solution propre demain... :sleep:

Reply

Marsh Posté le 23-01-2002 à 08:43:22    

balance le code de tes fonctions pour qu'on puisse t'aider mieux


---------------
What is popular is not always right, what is right is not always popular :D
Reply

Marsh Posté le 23-01-2002 à 08:52:57    

si il y a une erreur dans l'execution d'une méthode, il faut générer une exception.
 
ca se fait comme ca :
 

Citation :

public void taMethode() throws Exception {
  ...
  if (testdeLErreur) {
     throw new Exception("message décrivant l'erreur" );
  }
  ...
}


 
Le "throws" permet de déclarer que ta fonction peut générer des exception. le "throw new ..." lance une exception.
 
Il faut ensuite que tu gère ca au niveau de l'appel de la méthode :
 
...

Citation :

try {
   taMethode();
} catch (Execption e) {
   // ici tu fais ton traitement d'exception
}
...


 
le bloc "try" veut dire "on va essayer d'executer ces instructions". Lorsqu'un de ces instructions déclenche une exception, l'execution du bloc try est arrêtée. Le catch essaye alors de rattrapper l'excpetion qui a été lancée. Si l'exeception déclarée dans le catch est compatible avec l'exception lancée, l'exception est rattrapée et le traitement situé dans ce bloc catch est executé. (il peut y avoir plusieurs bloc catch rattrappant plusieurs exceptions différentes.
 
Si le bloc try a été correctement executé (sans lancement d'exception), l'execution du programme continue normalement à la suite des blocs catch (aucun des blocs catch ne sera executé).
 
voila. ca c'était pour des explications de base sur les exceptions. Si tu veux plus de détail va voir "penser en java" (lien dans ma signature).
 
Mais bon, en Java, oublie les code d'erreur ! les exceptions sont faites pour ca !

 

[edtdd]--Message édité par benou--[/edtdd]


---------------
ma vie, mon oeuvre - HomePlayer
Reply

Marsh Posté le 23-01-2002 à 09:34:50    

ah punaise j'avais pas lu. J'avais pas capté que ct un code d'erreur  :eek2:  :eek2:  :eek2:  
 
Tu programmais en C toi avant ca se voit :D


---------------
What is popular is not always right, what is right is not always popular :D
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed