Как обратиться к методу класса Form из другого класса? Есть одна единственная форма, и в классе этой формы описан не статический метод. Дело в том, что для обращения к этому методу из другого класса нужен объект класса Form. Так вот, где его взять? При попытке создать новый вылетает исключение о переполнении стека. Как быть?
Для обращения к методу класса Form из другого класса, можно передавать ссылку на объект класса Form через конструктор или метод класса, который требуется вызвать из другого класса.
Например, если у вас есть класс Form и класс Main, и вам нужно вызвать метод класса Form из класса Main, можно сделать следующее:
public class Form { public void someMethod() { System.out.println("Метод из класса Form"); } } public class Main { private Form form; public Main(Form form) { this.form = form; } public void callFormMethod() { form.someMethod(); } public static void main(String[] args) { Form form = new Form(); Main main = new Main(form); main.callFormMethod(); } }
В этом примере, мы создаем объект класса Form в методе main и передаем его в конструктор класса Main. Затем вызываем метод callFormMethod() из класса Main, который в свою очередь вызывает метод someMethod() из класса Form.
Если при создании нового объекта класса Form у вас возникает исключение о переполнении стека, возможно вы создаете объект рекурсивно или в бесконечном цикле. В этом случае нужно пересмотреть логику вашего приложения и исправить ошибку.
Для обращения к методу класса Form из другого класса, можно передавать ссылку на объект класса Form через конструктор или метод класса, который требуется вызвать из другого класса.
Например, если у вас есть класс Form и класс Main, и вам нужно вызвать метод класса Form из класса Main, можно сделать следующее:
public class Form {public void someMethod() {
System.out.println("Метод из класса Form");
}
}
public class Main {
private Form form;
public Main(Form form) {
this.form = form;
}
public void callFormMethod() {
form.someMethod();
}
public static void main(String[] args) {
Form form = new Form();
Main main = new Main(form);
main.callFormMethod();
}
}
В этом примере, мы создаем объект класса Form в методе main и передаем его в конструктор класса Main. Затем вызываем метод callFormMethod() из класса Main, который в свою очередь вызывает метод someMethod() из класса Form.
Если при создании нового объекта класса Form у вас возникает исключение о переполнении стека, возможно вы создаете объект рекурсивно или в бесконечном цикле. В этом случае нужно пересмотреть логику вашего приложения и исправить ошибку.