"参数?-6ren"> "参数?-我有一个具有以下签名的 Java 方法: public List convertToHtmlOptionsCompositeList (List objects, Class cl-6ren">
gpt4 book ai didi

java - 是否可以从此 Java 方法中删除 "Class"参数?

转载 作者:行者123 更新时间:2023-11-29 04:04:48 25 4
gpt4 key购买 nike

我有一个具有以下签名的 Java 方法:

public <T> List<HtmlOptionsComposite> convertToHtmlOptionsCompositeList
(List<? extends T> objects,
Class<T> clazz,
String getValueMethodName,
String getDescriptionMethodName,
String getDiscontinuedMethodName)
{ ... }

在每个给定对象上使用反射 (clazz.getMethod(...)) 的方法需要 clazz 参数,但我真的需要吗将它作为参数传递给方法?有什么方法可以重构代码以自动计算出 clazz 应该是什么?

最佳答案

您可以调用 getClass()在列表中的第一个对象上。那会给你一个 Class<? extends T>而不是 Class<T>虽然 - 特别是这意味着可能会给出一些不应该给出的方法(因为它们不是 T 本身的方法)。

关于java - 是否可以从此 Java 方法中删除 "Class<T>"参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/605859/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com