Bonjour, je suis en train de voir ce que l'on peut faire avec les Threads
et j'ai ajouté rapidement une interface graphique pour voir ce qui se passait lorsque je lancais un Thread à la main au milieu d'autre que j'avais lancé par programme.

Donc j'ai vite fait, une interface graphique avec un bouton qui appel un objet (en l'occurence un Thread), mais là ca bloque à la compilation sur un probleme de classe interne. Alors que ma classe unObjet est une classe à l'exterieur de la premiere et qui est compilée.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
C:\Java\ObjetThread>javac unObjet.java
unObjet.java:58: local variable obj2 is accessed from within inner class; needs
to be declared final
  obj4 = new unObjet("obj4");
  ^
unObjet.java:59: local variable obj2 is accessed from within inner class; needs
to be declared final
  obj4.start();
  ^
2 errors
Je mets le code du main()
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
public static void main(String args[])
{
  unObjet obj1;
  unObjet obj2;
  monObjet obj4;
  obj1 = new unObjet("obj1");
  obj2 = new unObjet("obj2");
  obj1.start();
  obj2.start();
  JFrame uneFrame = new JFrame("test");
  JPanel unJpanel = new JPanel();
  uneFrame.setContentPane(unJpanel);
  JButton lebouton = new JButton("interruption");
  unJpanel.add(lebouton);
 
  uneFrame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 
  uneFrame.pack();
  uneFrame.setVisible(true);
  lebouton.addActionListener(new ActionListener(){
  public void actionPerformed(ActionEvent e) 
  {
  obj4 = new monObjet("obj4");
  obj4.start();
  }});
  }
 
}
D'avance merci de vos idées