我无法通过CMD编译实现接口的类。 但它适用于任何Java IDE。 有什么建议? 谢谢。
论文是代码。
//Interface (MyInterface.java)
public interface MyInterface{
public int add(int a, int b);
}
//(MyInterfaceImpl.java)
public class MyInterfaceImpl implements MyInterface {
public int add(int a, int b){
return a + b;
}
}
\>javac MyInterface.java
\>javac MyInterfaceImple.java
MyInterfaceImpl.java:2: cannot file symbol
symbol: class MyInterface
public class MyInterfaceImpl implements MyInterface{
1 error
答案 0 :(得分:3)
这里有e
个结尾
javac MyInterfaceImple.java
^
但不在这里
//(MyInterfaceImpl.java)
这可能是个问题。
此外,如果您的接口/类位于包中,这可能是一个问题。如果是,请包含package
行和目录结构。
一切都按预期工作我的机器。这是一个演示:
aioobe@e6510:~/tmp/java$ cat -> MyInterface.java
//Interface (MyInterface.java)
public interface MyInterface{
public int add(int a, int b);
}
aioobe@e6510:~/tmp/java$ cat -> MyInterfaceImpl.java
//(MyInterfaceImpl.java)
public class MyInterfaceImpl implements MyInterface {
public int add(int a, int b){
return a + b;
}
}
aioobe@e6510:~/tmp/java$
aioobe@e6510:~/tmp/java$ ls
MyInterfaceImpl.java MyInterface.java
aioobe@e6510:~/tmp/java$ javac MyInterface.java
aioobe@e6510:~/tmp/java$ javac MyInterfaceImpl.java
答案 1 :(得分:2)
看起来您的接口类在物理上名为MyInterfaceImple.java,但您的代码将其称为MyInterfaceImpl
- (没有e)。
代码中使用的名称需要与物理文件匹配。还要检查这两个类是否在类路径中。