Non-static method 'demo()' cannot be referenced from a static context
时间: 2023-10-11 19:15:18 浏览: 51
Java8 Stream flatmap中间操作用法解析
5星 · 资源好评率100%
这个错误是因为你在一个静态方法中尝试调用一个非静态方法。静态方法属于类而不是实例,因此它不能引用实例变量或实例方法。非静态方法需要一个实例才能被调用,因此在静态方法中调用非静态方法是不合法的。
解决方法是将被调用的方法标记为静态方法或者创建一个类的实例来调用非静态方法。如果你需要在静态方法中使用非静态方法,可以先创建一个类的实例,然后通过实例来调用非静态方法。例如:
```
public class MyClass {
public void demo() {
// 非静态方法实现
}
public static void main(String[] args) {
MyClass myClass = new MyClass();
myClass.demo(); // 通过实例调用非静态方法
}
}
```
阅读全文