我希望我的意思是我的话。 我有这样一类:访问java中其他类的私有变量
public class MainClass extends JFrame{
private JLabel mainlabel;
private SampleClass sample=new SampleCalss();
public void intital(){
mainlabel=new JLabel("Main");
sample.setMethod(getLabel());
//
//some code
//
add(mainlabel);
}
public static void main(){
intital();
}
public JLabel getLabel(){
return mainlabel;
}
}
和其他类这样的:
public class SampleClass extends JFrame{
private JButton button=new JButton("Change");
private JLabel sLabel;
public SampleClass(){
//somecode
//
button.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
sLabel.setText("Sample text set");
}
});
add(jButton);
}
public void setMethod(JLabbel l){
sLabel=l;
}
}
这是一个真实的方式来访问mainlabel
和来自其它类改变它的值(在类此示例代码SampleClass
)有没有更好的或正确的解决方案? 请注意MainClass
是具有main
方法的类。
反射能做到这一点,但它将是一个黑客 –