-3

我在 Xxx 类中有这个方法,method1

在这个类 Yyy 中存在相同的方法,它扩展了 Xxx 但唯一的区别是方法内部发生的事情不一样,除了一切都很好。

那么这是否称为覆盖?还是子类?

tks。ps如果需要我有但不想让事情复杂的代码。

4

3 回答 3

1

Yyy是 的子类Xxx。“子类”基本上与“扩展”的含义相同。通过定义method1on Yyy,您将覆盖由 提供的定义Xxx

于 2012-11-19T01:37:14.803 回答
1

这称为方法的覆盖。Yyy 类是 Xxx 的子类,并且在子类中重新定义的方法将覆盖超类中的方法。要验证这是真的,请使用 注释子类中的方法@Override

于 2012-11-19T01:37:40.223 回答
1

您正在覆盖子类中的方法。子类是使用extends关键字从超类扩展而来的类。并且仅当您存在继承关系时才会出现覆盖,即一个类扩展另一个类。

但是,覆盖方法必须满足以下规则:

  1. 方法名称应该相同
  2. 返回类型应该相同/子类型(在协变返回的情况下)
  3. 方法签名应该相同(即参数的数量和类型必须匹配)
  4. 不能有最严格的访问修饰符
  5. 可能有最少限制的访问修饰符
  6. 不得抛出新的或更广泛的异常
于 2012-11-19T01:39:06.720 回答