Java学习笔记:利用泛型动态的返回不同的类

您所在的位置:网站首页 返回类型为接口 Java学习笔记:利用泛型动态的返回不同的类

Java学习笔记:利用泛型动态的返回不同的类

2023-08-28 06:42| 来源: 网络整理| 查看: 265

环境 前言

最近在做代码迁移时,想写这么一个方法,我传入什么对象,其就返回什么对象; 传入的对象有继承关系,在处理完相应逻辑后,就返回该对象;

比如有如下两个类:

ExaminationBindBO |___________ExaminationPkgBindBO

我希望我得到的效果是:

ExaminationPkgBindBO pkgBindBO = new ExaminationPkgBindBO(); ExaminationBindBO bindBO = new ExaminationBindBO(); ExaminationPkgBindBO bindBO = saveProductChannel(Lists.newArrayList(pkgBindBO)); ExaminationBindBO bindBO = saveProductChannel(Lists.newArrayList(bindBO));

关键saveProductChannel()这个方法怎么写? 一开始时间紧,没想出来,只写成了返回值为void的方法;

// 上界通配符 public void saveProductChannel(List request) { // 处理业务逻辑 }

后面闲下来又研究了下;

动态的返回不同的类 public T saveProductChannel(List request) { // 处理业务逻辑 return request.get(0); }

如果想更动态的返回:

public List saveProductChannel(Class request) { List t = null; try { t = request.getDeclaredConstructor().newInstance(); } catch (Exception e) { e.printStackTrace(); } return t; }

后面在查阅资料中有了个疑问:

为什么方法参数中上界通配符只能写成这样



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3