Newsgroup: it.comp.java
Titolo: Variabili Globali

Ciao
Oggi per definire variabili globali (visibili in ogni parte del
programma) uso questo stratagemma:
public class Pippo extends JPanel
{
	// Definisco le variabili
}
public class Pannello1 extends JPanel
{
	// Alloco gli oggetti
}
Esiste un modo più "elegante" del tipo:
public class Pannello1 extends JPanel
{
	"superpublic" JTextField prova;
	Pannello1()
		{
			prova = new JTextField(20);
		}
}
Grazie ciao
Alle

 ha scritto nel messaggio
news:mgqtisc5ih5jtq11s...@4ax.com...

Fai una classe tipo...
public class Global {
  // definizioni
  public int tizio;
  public int caio;
}
e poi dalle altre tue classi le puoi richiamare con
Global.tizio = 1;
Global.caio = 5;
ecc...


emmmm... scusate l'interruzione, ma mancherebbe "static" davanti alle
variabili.
A parte questo, parlare di variabili globali in programmazione OO fà un
po' accaponare la pelle...o no?

 po' accaponare la pelle...o no?
Ecco un purista...
ma dai a volte sono utili!
non sarai mica uno di quelli che crea quegli stupidi metodi per ogni
modifica di tutti i valori di una classe al di fuori di questa?
tipo:
    getValoreA();
    setValoreA(5);
ecc...

 po' accaponare la pelle...o no?
-- 
         \\|//
        ( @ @ )
+----oOO--(_)--OOo----------[Dott. Marco Azzalini]-------------------+
|                                                                    |
|              Consulente Sviluppo Software & Networking             |
|               Sun Certified Programmer (Java 2 Platf.)             |
|                                                                    |
|  cell:03470846528  -  e-mail: 
marco.a...@libero.it
             |
|  Web: 
http://utenti.tripod.it/Marco_Azzalini
 - Spedia Code: 459755 |
+--------------------------------------------------------------------+
|Legge di Hofstadter:                                                |
|         ci vuole sempre piu' tempo di quanto si pensi,             |
|         anche tenendo conto della Legge di Hofstadter.             |
+--------------------------------------------------------------------+


Ti ringrazio ma il problema persiste...
Voglio essere più preciso ma non sò se centra!!! :-)
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.lang.*;
class Pannello1 extends JPanel
implements ActionListener
{
	public Pannello1()
		{
			JLabel Etichetta = new JLabel("Clicca che mi
chiudo");
			Button01 = new JButton("Vai");
			add(Button01);
			add(Etichetta);
 
			Button01.addActionListener(this);
		}	
 
		public void actionPerformed(ActionEvent evt)
				{
					Multiframe.frame.hide();
				}
 
		public JButton Button01;				
}
class Frame1 extends JFrame
{
	public Frame1()
		{
			setTitle("Frame 1");
			setSize(600,200);
			addWindowListener ( new WindowAdapter()
{ 
public void windowClosing(WindowEvent e)
{	
System.exit(0);
}
}
							     );
			Container contentPane = getContentPane();
			contentPane.add(new Pannello1());
		}
}
public class Multiframe
{
	public static void main (String[] args)
		{
			JFrame frame = new Frame1();
			frame.show();
		}
}
Ho fatto come mi hai detto ma mi dice...
"Can't make a static reference to non static variable frame in class
Multiframe"
Cosa significa? Come devo fare?
Grazie Ciao

 ha scritto nel messaggio
news:gbnajs43cob5uvspd...@4ax.com...


Che in quel caso hai chiesto di accedere a delle variabili che non sono
state dichiarate "static" da un metodo static.
Devi dichiarare quelle variabili "static".
tipo:
public static int (ecc...)

 ecc...
A parte il fatto che BISOGNEREBBE fare SEMPRE così, ammetto che a volte
non lo faccio, ma non lo vado a dire in giro!
:-)