我有一个方法名MakeKK
public void MakeKK(String K1, String K2){
....
}
我尝试以下列方式调用此方法,
File f = null;
MakeKK(f.getAbsolutePath()+ "\\Text.txt", f.getAbsolutePath()+"\\Text2.txt");
但是它给出了错误
Error: non-static method MakeKK
有人能发现我的错误吗?
答案 0 :(得分:0)
如果您从MakeKK
致电main()
,则有3个选项
1. Make MakeKK static..
2. Create an instance of class containing MakeKK and use the instance to call MakeKK.
3. You will get NullPointerException when you run your code as f is null..
答案 1 :(得分:0)
您必须创建一个“包含”MakeKK()
方法的类的实例。
File f = null;
// ... Here you may add some code to avoid NullPointerException
NameOfClass obj = new NameOfClass(...);
obj.MakeKK(...);
所以你用它来调用那个方法。
另一种解决方案是制作方法static
:
public static void MakeKK(String K1, String K2){
....
}
选择正确的方法取决于您在程序中执行的操作以及方法MakeKK()
的作用。您可以阅读this SO post以了解何时使用static
方法。
注意:
File f
初始化null
,当您调用方法NullPointerException
时会导致MakeKK(...)
nameOfMethod
而不是NameOfMethod
。最后一个用于命名类,接口...您的方法应该被称为makeKK()
。