pb prog java pour transmettre des variables

pb prog java pour transmettre des variables - Java - Programmation

Marsh Posté le 20-12-2004 à 19:59:22    

Bonjour,
j'ai un pb sur mon prog java.
En fait, ma methode run appelé par la méthode start, ne reconnait pas la vairable port défini par mon main.
 
Que puis-je faire?
 
Merci
A+
 
---------------------------------------------------------------------------------
import java.io.*;
import java.net.*;
 
    public class Sbn extends Thread {
 BufferedReader inchan;
 DataOutputStream outchan;
 Socket socket;
 
 Sbn(Socket s) {
     try {
  inchan = new BufferedReader(new InputStreamReader(s.getInputStream()));
  outchan = new DataOutputStream(s.getOutputStream());
     }
     catch(IOException e) {e.printStackTrace(System.err); System.exit(1);}
     socket = s;
 }
 
 public void run()
 {
     //try{
   
  System.out.println("CONNEXION "+port);
  // outchan.writeChars("CONNEXION "+port);
  //}
     //catch(IOException e) {e.printStackTrace(System.err); System.exit(1);}
 }
 
 public static void main(String args[])
 {
     try {
 
  int port = Integer.parseInt(args[0]);
  int nb_lignes = Integer.parseInt(args[1]);
  int nb_colonnes = Integer.parseInt(args[2]);
         int nb_max_joueurs_par_groupe = Integer.parseInt(args[3]);
  int nb_carrees_par_joueurs = Integer.parseInt(args[4]);
  ServerSocket serv = new ServerSocket(port);
   
  while (true){
      Socket client = serv.accept();
      Sbn service = new Sbn(client);
      service.start();
  }
     }
     catch (Throwable t) {t.printStackTrace(System.err); }  
     
 }
    }

Reply

Marsh Posté le 20-12-2004 à 19:59:22   

Reply

Marsh Posté le 20-12-2004 à 20:06:02    

C'est normal, ta variable port est localle à la méthode main. Une autre méthode ne pourra donc pas la voir, il faut que tu déclare ta variable port en temps que variable private de la classe Sbn. Ensuite tu met tes get/set, et quand t'instancie ta classe Sbn, tu définies le port avec ta méthode set :)

Reply

Marsh Posté le 20-12-2004 à 21:59:22    

oui, mais je dois qd mm donner les valeurs de port,.... dans mon main vu que "port" c'est la valeur de mon 1er argument non?
 
Merci
A+

Reply

Marsh Posté le 21-12-2004 à 00:02:28    

Ben fait comme j'ai dit, ça résoudra ton problème ;)

Reply

Marsh Posté le 21-12-2004 à 11:06:35    

le code entre balise cpp s'il vous plait ...


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

Sujets relatifs:

Leave a Replay

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