如何使用通用方法获取实例

还在学习

我正在尝试使用通用方法构建一页汇编器。以下是一段代码。在此代码中,IEntity是数据库实体的标记接口。

public abstract class PageHrefBuilder implements HrefBuilder<IEntity, PageLinks> {

    @Override
    public PageLinks buildLinks(IEntity entity) {
        return null;
    }
}

public interface HrefBuilder<E extends IEntity, L extends Links> {

    public L buildLinks(E dto);
}

因此,我们有一个接口说可以使用IEntity类型的类构建链接并返回Links类型的值。所以我想在抽象类中编写一些通用代码,而抽象类不知道它应该处理哪种类型的实体。例如,实体可以是UserEntity,OrderEntity等。

所以我的问题是,如何在抽象类中使用instanceof或是否采用其他方法来使类实例建立链接。

有人可以帮我这个忙。

莎兰93

您可以使buildLinks方法采用Class<T>参数,而不要采用必须传递的对象。

所以会的

public L buildLinks(Class<E> dto);

然后在您的抽象类中

@Override
public PageLinks buildLinks(Class<IEntity> dto) {
    return dto.newInstance();
}

希望这个答案可以对您有所帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用Hibernate实现从数据库获取数据的通用方法?

来自分类Dev

如何使用TypeBuilder调用通用基本方法

来自分类Dev

飞镖,如何使用反射获取方法参数的通用类型?

来自分类Dev

Java:使用lambda参数获取通用方法的实际类型

来自分类Dev

如何从绑定方法获取实例的引用?

来自分类Dev

使用Powershell的Azure如何获取实例计数

来自分类Dev

获取通用类型的实例

来自分类Dev

从SQLAlchemy中的声明式定义实例获取主键的通用方法

来自分类Dev

获取实例调用方法?

来自分类Dev

如何获取在jni中返回通用类型的函数的方法ID?

来自分类Dev

用通用方法实例化Wrapper对象

来自分类Dev

如何实例化通用类型的新实例

来自分类Dev

如何获取给定方法的通用参数的类型

来自分类Dev

如何使用显式类型参数实例化通用记录?

来自分类Dev

使用Shapeless通用的默认实例为案例类构建具有定义通用createValue方法的参数

来自分类Dev

飞镖:使用通用扩展方法,获取NoSuchMethodError:类“ xxx”没有实例方法“ yyy”

来自分类Dev

(Spring JPA)如何从Delete方法获取实例

来自分类Dev

获取Java中通用对象实例的捕获

来自分类Dev

如何使用通配符模拟通用方法的行为

来自分类Dev

如何使用反射获取特定类型的通用列表

来自分类Dev

在.NET通用方法中,如何获取实际参数类型

来自分类Dev

如何在Java通用方法中初始化实例

来自分类Dev

如何使用通用参数实例化接口

来自分类Dev

如何在通用Lisp中获取类的所有实例?

来自分类Dev

如何在C#中获取通用方法的值

来自分类Dev

如何在接口中使用静态方法返回实例方法返回的通用实例?

来自分类Dev

如何通用地使用覆盖的方法参数

来自分类Dev

使用“is”运算符查找类实例的通用方法

来自分类Dev

如何正确获取`next`以使用重写的实例方法`__next__`?

Related 相关文章

  1. 1

    如何使用Hibernate实现从数据库获取数据的通用方法?

  2. 2

    如何使用TypeBuilder调用通用基本方法

  3. 3

    飞镖,如何使用反射获取方法参数的通用类型?

  4. 4

    Java:使用lambda参数获取通用方法的实际类型

  5. 5

    如何从绑定方法获取实例的引用?

  6. 6

    使用Powershell的Azure如何获取实例计数

  7. 7

    获取通用类型的实例

  8. 8

    从SQLAlchemy中的声明式定义实例获取主键的通用方法

  9. 9

    获取实例调用方法?

  10. 10

    如何获取在jni中返回通用类型的函数的方法ID?

  11. 11

    用通用方法实例化Wrapper对象

  12. 12

    如何实例化通用类型的新实例

  13. 13

    如何获取给定方法的通用参数的类型

  14. 14

    如何使用显式类型参数实例化通用记录?

  15. 15

    使用Shapeless通用的默认实例为案例类构建具有定义通用createValue方法的参数

  16. 16

    飞镖:使用通用扩展方法,获取NoSuchMethodError:类“ xxx”没有实例方法“ yyy”

  17. 17

    (Spring JPA)如何从Delete方法获取实例

  18. 18

    获取Java中通用对象实例的捕获

  19. 19

    如何使用通配符模拟通用方法的行为

  20. 20

    如何使用反射获取特定类型的通用列表

  21. 21

    在.NET通用方法中,如何获取实际参数类型

  22. 22

    如何在Java通用方法中初始化实例

  23. 23

    如何使用通用参数实例化接口

  24. 24

    如何在通用Lisp中获取类的所有实例?

  25. 25

    如何在C#中获取通用方法的值

  26. 26

    如何在接口中使用静态方法返回实例方法返回的通用实例?

  27. 27

    如何通用地使用覆盖的方法参数

  28. 28

    使用“is”运算符查找类实例的通用方法

  29. 29

    如何正确获取`next`以使用重写的实例方法`__next__`?

热门标签

归档