我有以下界面:
public interface MyFunctor {
int myFunction(int x);
}
我创建了一个实现此接口的类:
public class Myfunction1 implements MyFunctor {
}
如何在主项目中使用?我已经纠正了错误,现在我需要如何在主项目中运行它?
我的意思是public static void main(String[]args)
?
答案 0 :(得分:1)
这意味着,您需要实现您的类继承的接口中描述的每个方法。
在你的情况下:
public class Myfunction1 implements MyFunctor
{
int myFunction(int x)
{
// Do whatever needs to be done here.
return x; // Just so that it compiles.
}
}
答案 1 :(得分:1)
正如其他人所指出的那样,您需要提供interface
中定义的方法的实现。
要运行您的课程,您需要在main
方法中创建一个实例:
public static void main(String[] args) {
MyFunction1 mf1 = new MyFunction1();
}
或者,您可以将var引用为您的界面类型:
public static void main(String[] args) {
MyFunctor mf = new MyFunction1();
}
要在已实现的方法中测试代码,您需要在新对象上调用该方法:
public static void main(String[] args) {
MyFunctor mf = new MyFunction1();
int input = 5; //just for fun
int output = mf.myFunction(input);
}
如果您想获得幻想,可以将命令行中的input
var作为参数传递给您的程序:
public static void main(String[] args) {
MyFunctor mf = new MyFunction1();
int input = Integer.parseInt(args[0]); //you should include error handling
int output = mf.myFunction(input);
}
请注意,您的main
方法可以包含在任何Class
中,因此您可以使用MyFunction1
类来实现它。要在命令行上运行它,您将使用:
>java MyFunction1
这假设您在.class
文件所在的目录中。
答案 2 :(得分:0)
您必须添加实施。否则,实现 MyFunctor的语句不正确。
示例:
public class Myfunction1 implements MyFunctor{
public int myFunction(int x) {
return x+1; // or whatever you want to do with x..
}
}
答案 3 :(得分:0)
示例:
public class Myfunction1 implements MyFunctor {
int myFunction(int x) {
/* your code here */
}
}
祝你好运!