Menu

Java - les variables [Résolu/Fermé]

linuxakros 116 Messages postés mercredi 9 avril 2008Date d'inscription 15 octobre 2008 Dernière intervention - 14 avril 2008 à 22:15 - Dernière réponse : linuxakros 116 Messages postés mercredi 9 avril 2008Date d'inscription 15 octobre 2008 Dernière intervention
- 15 avril 2008 à 18:28
Bonjour à tous,
J'ai besoin de votre aide pour résoudre un problème.
J'ai fait ceci:

public void affichage(String horaire)
{
horaire = "10:12:12";
}

et par exemple j'ai cela:

public void printError(String s)
{
Object [] o = { s };
//text_canvas.append(ERROR.format(o));
text_canvas.append(horaire + ERROR.format(o));
postTextEvent();
}

Evidemment, ça ne fonctionne pas. Je voudrais donc savoir comment passer la variable "horaire" dans la fonction printError (et d'autres aussi, enfin quand ça fonctionne pour un).

Merci de votre aide.

Bonne journée (ou soirée).
Patrick
Afficher la suite 

4 réponses

Meilleure réponse
Posotaz 500 Messages postés samedi 23 juin 2007Date d'inscription 19 juin 2011 Dernière intervention - 14 avril 2008 à 23:34
1
Merci
Hello,

Java est un langage exclusivement orienté objet. Dans ton cas je suppose que les méthodes (on parle bien de méthodes et non de fonctions) printError et affichage font partie de la même classe, disons "Patrick".

Dans un lanage Orienté Objet, pour que deux méthodes aient accès au même emplacement mémoire, on le déclare en tant que propriété de classe. C'est à dire :

public class Patrick extends Object {
  
  private String horaire; // ceci est une propriété de la classe Patrick

  public void affichage(String horaire)
  {
  horaire = "10:12:12"; // faire ceci n'a aucun sens. Si tu passes l'horaire en argument c'est pour utiliser sa valeur, pas pour l'écraser. Mais si tu l'as fait à des fins de compréhension ça peut passer. A ce stade tu devrais affecter la variable "horaire" à la propriété, comme ceci :

  this.horaire = horaire;
  } 

// Ayant affecté la variable horaire à la propriété du même nom, la classe printError y aura maintenant accès avec la bonne valeur.

Bien à toi.

Merci Posotaz 1

Avec quelques mots c'est encore mieux Ajouter un commentaire

CCM a aidé 22334 internautes ce mois-ci

Meilleure réponse
Blue project - 15 avril 2008 à 00:47
1
Merci
<code>
public String affichage(){
return new SimpleDateFormat("HH:mm:ss").toString();
}

public void printError(String s){
text_canvas.append( affichage() + ERROR.format(o));
}

Merci Blue project 1

Avec quelques mots c'est encore mieux Ajouter un commentaire

CCM a aidé 22334 internautes ce mois-ci

linuxakros 116 Messages postés mercredi 9 avril 2008Date d'inscription 15 octobre 2008 Dernière intervention - 15 avril 2008 à 06:59
0
Merci
Je vous remercie Posotaz et Blue project, je testes cela ce soir.
linuxakros 116 Messages postés mercredi 9 avril 2008Date d'inscription 15 octobre 2008 Dernière intervention - 15 avril 2008 à 18:28
0
Merci
Bonsoir,

ça fonctionne parfaitement avec la fonction que j'avais fait, merci beaucoup.

Patrick