я надеюсь, что имею в виду свои слова. у меня есть такой класс:
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
.