gpt4 book ai didi

java - Java中的泛型方法

转载 作者:行者123 更新时间:2023-12-01 06:30:04 26 4
gpt4 key购买 nike

我不知道如何给它一个更好的标题,因为我真的不知道这个模式在 Java 中被称为什么。

现在我有一个带有此签名的方法:

public Directory getDirectory(Class<? extends Directory> type) { ... }

你这样调用它:

MyDirectory directory = (MyDirectory)getDirectory(MyDirectory.class);

对类型的约束确保 MyDirectory 必须从 Directory 派生。

我真正想做的是避免强制转换并减少所需的代码量。在 C# 中你可以说:

MyDirectory directory = getDirectory<MyDirectory>();

有没有办法在Java中做到这一点或类似的事情?自 1.4 版以来我就没有编写过任何 Java 代码!

最佳答案

public <T extends Directory> T getDirectory(Class<T> type) { ... }

MyDirectory directory = getDirectory(MyDirectory.class);

关于java - Java中的泛型方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5806359/

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