Java Cannot make a static reference to the non-static method问题解决

Java Cannot make a static reference to the non-static method问题解决


main中方法调用非静态函数报错问题,如下:

Java Cannot make a static reference to the non-static method问题解决_第1张图片
警告为:

Cannot make a static reference to the non-static method sum(int, int) from the type MethodReferenceError

Java Cannot make a static reference to the non-static method问题解决_第2张图片
首先要理解以下几点,念头自然就会通达了:

1.static修饰的方法,无须产生类的实例对象就可以调用该方法,即satic变量是存储在静态存储区的,不需要实例化。
2.非static修饰的方法,需要产生一个类的实例对象才可以调用该方法。
也就是说,在main函数中调用函数只能调用静态的。如果要调用非静态的,那么必须要先实例化对象,然后通过对象来调用非静态方法,
这是java中相对基础的知识点了,现在,希望读者可以不看后面的,思考一下该如何解决,尽量依靠自己的思考完成,这样更能完全掌握… 它是有两种解决方式。



第一种将非静态方法改为静态方法,如下:

Java Cannot make a static reference to the non-static method问题解决_第3张图片
第二种方案就是通过实例化解决,如下:

Java Cannot make a static reference to the non-static method问题解决_第4张图片



你可能感兴趣的:(java,1024程序员节)