Я много гугл по этому поводу, много чего перепробовал и так и не справился. Итак, у меня есть эта переменная в классе A, и я хочу напечатать эту переменную в классе B, но значение переменной в классе A проходит через метод перед его вызовом.
public class TestSubject extends javax.swing.JFrame {
static String a;
private void testButtonActionPerformed(java.awt.event.ActionEvent evt) {
a = "hello"; }
}
Здесь я объявляю переменную и нажимает кнопку, чтобы установить значение переменной «Привет». Я проверил, действительно ли переменная действительно получала значение, имея другую кнопку, печатающую переменную 'a' в том же классе.
public class TestSubject2 extends javax.swing.JFrame {
TestSubject test = new TestSubject();
private void okActionPerformed(java.awt.event.ActionEvent evt) {
System.out.println(test.a);
}
}
Итак, здесь я пытаюсь вывести переменную a из класса 'TestSubject'.
Итак, что я пробовал:
Я пытался использовать как non-stati c, так и stati c.
Я пытался использовать метод возврата
class TestSubject { //purposely left the extend but you get what I mean
public String getString() {
return a; } }
Class TestSubject2 {
TestSubject test = new TestSubject();
private void okActionPerformed(java.awt.event.ActionEvent evt) {
System.out.println(test.getString());
}
}
Однако, если бы я явно дал 'a' значение, подобное:
static String a = "hello";
Он будет правильно распечатан в другом классе, используя первый метод.
Я убедился, что нажимаю кнопки последовательно, чтобы значения вводились.
Итак, я хочу знать, как я могу вызвать переменную из другого класса.