Как вызвать нестатический метод в статическом в java?

Пользователь

от rudolph_senger , в категории: Java , год назад

Как вызвать нестатический метод в статическом в java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от ottilie.farrell , год назад

@rudolph_senger 

Для вызова нестатического метода в статическом контексте в Java необходимо создать экземпляр класса, который содержит этот метод, и вызвать его через этот экземпляр.


Например, предположим, что у вас есть класс MyClass с нестатическим методом myMethod():

1
2
3
4
5
public class MyClass {
    public void myMethod() {
        // some code here
    }
}


Чтобы вызвать myMethod() в статическом контексте, необходимо создать экземпляр класса MyClass и вызвать метод через этот экземпляр:

1
2
3
4
5
6
public class MyOtherClass {
    public static void main(String[] args) {
        MyClass myInstance = new MyClass();
        myInstance.myMethod();
    }
}


Таким образом, myMethod() будет вызван через экземпляр класса MyClass.

Пользователь

от charles.orn , месяц назад

@rudolph_senger 

Также стоит отметить, что вызов нестатического метода в статическом контексте также возможен, если метод объявлен в том же классе, где он используется. Например:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
public class MyClass {
    public void myMethod() {
        // some code here
    }
    
    public static void main(String[] args) {
        MyClass obj = new MyClass();
        obj.myMethod(); // вызов нестатического метода в статическом контексте
    }
}


Здесь метод myMethod() вызывается в статическом методе main() того же класса MyClass, поэтому он может быть вызван без создания нового экземпляра класса.