繁体   English   中英

将类转换为具有泛型的类

Cast classes to classes with generics

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我反射性地获取类​​及其声明的类,我想将它们传递给一个接受类的函数,但它上面有泛型。

// classes to pass into function
ClassPath.from(MyParent.class.getClassLoader())
  .getTopLevelClasses()
  .forEach(classInfo -> {
    // checks...

    Class<?> clazz = classInfo.load();
    for (Class<?> declaredClass : clazz.getDeclaredClasses()) {
      genericFunction(clazz, declaredClass); // the problem
    }

  });
// the function to pass into
<E extends Extendable<? extends Parent<E>>> void genericFunction(Class<? extends Parent<E>> parentClass, Extendable<E> extendableClass);
// classes used in generic function
public class MyParent extends Parent<MyExtendable> {
  protected class MyExtendable extends Extendable<MyParent> {
    
  }
}

public abstract class Parent<E extends Extendable<? extends Parent<E>>> {
  
}

public abstract class Extendable<E extends Parent<? extends Extendable<E>>> {
  
}

问题是我不知道如何使用Class<?>对象genericFunction()或反射运行genericFunction()

我可以假设ClassPath找到的类是兼容的(例如:它们都在内部类中正确扩展了ParentExtendable 。)

我可以在函数和类上更改我(可能)凌乱和过于复杂的泛型。

问题暂未有回复.您可以查看右边的相关问题.
1 图类的 Swift 泛型

我正在尝试在 Swift 5 中创建一些类来表示有向图。 我发现 Swift 泛型非常令人困惑和限制。 到目前为止,这是我所得到的,但无论我尝试什么,Swift 似乎都会提出一些模糊的错误或其他错误(两个在下面的评论中显示)。 我什至可以在 Swift 中实现这种结构,而无需将 Node 硬编码 ...

2 使用泛型在类之间进行转换

有人可以解释为什么这段代码不起作用? b为什么不能施放? 我在考虑协方差和逆变,但就我而言,这不适用于抽象类。 编译错误:无法将类型“ConsoleApplication1.SVM”转换为“ConsoleApplication1.VMSBase”ConsoleApplication1 ...

3 与泛型和类一起苦苦挣扎

我总是在苦恼中苦苦挣扎。 我不知道为什么这会让我发疯。 我有一个老问题,我有好几次。 这是行不通的。 编译器抱怨如下: 如果我将(故障)阵列线更改为 发生相同的错误消息,但也添加了此消息: 唯一可行的版本是这一行: 这个解决方案并不令人满意,因为你无 ...

4 具有现有类的Java泛型

我没有实际的问题,我只是在玩Java Generics而且我意识到如果我用Generics创建一个类,我可以使用任何名称作为类的泛型部分(所以在&lt;&gt; ),它将被视为不存在的类,作为变量。 因此,如果我使用String作为通用部分,它将不再是String ,所以例如你不能使用它的 ...

5 Java泛型的不兼容类

似乎我再次陷入了Java泛型的困境。 这是我所拥有的: 几节课: class CoolIndex implements EntityIndex&lt;CoolEntity&gt; class CoolEntity extends BaseEntity 使用上面的类枚举: ...

6 在抽象类中使用泛型

我正在研究一个抽象类,其中实现类需要实现 T 的列表。问题是这不起作用: 我确定我缺少一个明显的答案,并且我知道我可以构建一个抽象基类型以放入列表,但是当我使用我的 Linq 命令构建列表时,抽象类型 (ItemBase ) 不能很好地与 .ToList() 方法配合使用。 我正在尝试做的事情很 ...

7 类的 Dlang 泛型

第一次海报。 我已经使用 Java 几年了,并决定学习 D。在 Java 中,您可以声明一个具有泛型类型的类,然后从该类创建一个新对象。 喜欢: 然后简单地调用foo&lt;String&gt; f = new foo&lt;&gt;(); . 我试图在 D 中实现相同的,但我得到了一个编译错 ...

8 打字稿类,接口和泛型

我正在编写Project和User这两个类,每个类都有一个find方法,需要调用api rest调用 尝试#1 现在,这显然不是很好;)没有检查参数,没有定义类型,重复代码等 尝试#2 因此,略胜一筹。 减少代码重复。 仍然没有类型检查。 救援接口;) 尝 ...

9 使用泛型实现类

我对正在执行的实现感到困惑。 我想调用的这个方法 &lt;I, O, T&gt; T post(String url, I data, ContentBuilder&lt;I, HttpEntity&gt; contentBuilder, ResponseHandler&lt;? exte ...

10 Java泛型嵌套类

我收到以下错误:尝试在JDK7中实现嵌套的泛型结构以表示一对多关系时找不到符号错误。 活动具有一对多的活动和会话。 活动有1到许多圈和训练。 圈数为1到多。 跟踪必须具有1到多个TrackPoint。 .....} 等等。 当我尝试获取activity.getA ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2021 STACKOOM.COM