【问题标题】:How do I implement an interface from a different file?如何从不同的文件实现接口?
【发布时间】:2011-04-10 16:49:30
【问题描述】:

我是 Java 新手,我想知道如何去做这样的事情。

接口文件:

public interface ExampleInterface {
    void doSomething();
}

实现文件(同目录):

public class ExampleImplementation implements ExampleInterface {
    void doSomething() {
        // code goes here
    }
}

编辑:呵呵,没有人注意到我忘记添加class关键字了。

【问题讨论】:

  • 你会这样做。你的问题到底是什么?
  • 嗯……就是这样。接口声明方法,实现实现它们。您的示例代码是有效的。你还想知道什么?
  • 在其他语言中,您必须指定您正在使用另一个文件。您是说我可以将它们保存在同一个目录中并且这样可以正常工作吗?
  • 实现需要找到接口。这可以通过对接口使用 import 语句、在声明实现接口时给出接口的完整名称或将接口和实现放在同一个包中来实现。通常你在文件的开头有一个包语句。通常文件位于反映其包的目录中。

标签: java interface implementation


【解决方案1】:

在您的示例中,一切看起来都不错。

记住 java 有包,在上面的例子中你没有精确的包,所以接口和类在默认包中。你必须把这些文件放在某个目录下,然后编译类文件。

编译使用:

javac ExampleImplementation.java

或者更好的是,使用一些 IDE(Eclipse 或 Netbeans)然后如果出现问题,IDE 会通知您并告诉您遇到了什么错误。

【讨论】:

    【解决方案2】:

    呃,把它们放在同一个包里。要回答您的问题-是的,只需将它们放在同一目录中即可。但即使您不将它们放在同一个目录中,它们仍然可以工作,除非您必须进行正确的导入。

    【讨论】:

      【解决方案3】:

      你就是这样做的。你只需要将两者都编译成字节码就可以了。

      【讨论】:

        【解决方案4】:

        如果两个文件都在同一个文件夹中,则无需执行任何操作。

        请注意,您的文件名应与它们包含的类/接口的名称相同(带有.java 扩展名)。

        【讨论】:

          【解决方案5】:
          猜你喜欢
          • 1970-01-01
          • 2019-01-09
          • 2014-06-18
          • 1970-01-01
          • 2017-11-04
          • 1970-01-01
          • 2019-06-13
          • 1970-01-01
          • 2011-07-08
          相关资源
          最近更新 更多