首页 > 解决方案 > Foo的实现类可以称为Foo的扩展类吗?

问题描述

这个问题一直让我莫名其妙;下面是一个例子。

接口类:

public interface UserInterface{

   public String make_nickname();

}

实现类:

public class UserInfo implements UserInterface{

   private String name;
   private String nickname;

   public String make_nickName(){
   this.nickname = this.name + "ish";
   return this.nickname;
   }


}




鉴于此,我正在调用任何实现UserInterface这样的实例:

另一个远程类中的一些任意函数:

public void showNickName(<T extends UserInterface>T user){
   system.out.println(user.make_nickname());
}

T用于表示 的(通用)实现类UserInterface
但是在这里我称之为它,<T exnteds UserInterface>据我所知暗示T. 这是调用实例的合法语法吗? 不知何故,上面的代码似乎对我有用。UserInterface
UserInfo

欢迎任何反馈。

标签: javagenericsextendsinterface-implementation

解决方案


正如Java 有界类型参数教程中所述:

在泛型上下文中,extends在一般意义上用于表示“扩展”(如在类中)或“实现”(如在接口中)。


推荐阅读