java - 我正在学习为包中的接口(interface)单独编写实现类,但不断出现错误?

标签 java interface package

这是我的界面:

  public interface prog56pack2interface
  {
     double add (int v1, int v2);

     double subtract (int v1, int v2);

     double product (int v1, int v2);

     double divide (int v1, int v2);

     String showme ();
  }

这是我的实现类的代码:

public class prog56pack2implclasses1 implements prog56pack2interface
{
    public double add (int v1, int v2)
    {
        return v1 + v2;
    }

    public double subtract (int v1, int v2)
    {
        if (v1 > v2)
        {
            return v1 - v2;
        }
        else
        {
            return v2 - v1;
        }
    }
}

我在这里有两个主要疑问:

1) 为什么当我按原样编译上述代码时会出现此错误

prog56pack2implclasses1 is not abstract and does not override public class prog56pack2implclasses1 implements prog56pack2interface

2) 当我包含提示用户进行 I/O 操作的“divide()”方法时,我收到错误:(我在该方法附近包含了 throws IOException)

divide(int,int) in prog56pack2implclasses1 cannot implement divide(int,int) in prog56pack2interface.

任何关于我错在哪里以及为什么错的评论都会非常有帮助。

最佳答案

1) 您需要在第一个实现该方法的具体类中实现所有 方法。

2) 当实现一个具有抛出异常的方法的接口(interface)时,不需要在覆盖它的方法中声明该异常

关于java - 我正在学习为包中的接口(interface)单独编写实现类,但不断出现错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59864682/

相关文章:

java - 使用查询参数通过运行时从 Java 调用 mongoexport(编码问题?)

C# 可以隐藏继承的接口(interface)吗?

java - 使用相同的方法名称实现接口(interface)和抽象类导致通用名称冲突

c#插件系统问题

java - 按功能包装

python - 打包和argparse

java - 对于所有相同的号码,电话号码验证应该失败

java - 如何从标准输入读取直到 EOF

java - 如何在java中实现我自己的通用集合?

binary - 如何为多种架构创建二进制 Debian 软件包?