如何在Java中编写一个采用两个相同类型参数的通用方法?

如何在Java中编写一个采用两个相同类型参数的通用方法?,第1张

如何在Java中编写一个采用两个相同类型参数的通用方法?

究其原因,这是编译因为Java会推断出参数的最具体的超传入,在这种情况下,后是盒装,以和为传递。

Object
Serializable &Comparable<? extends Serializable & Comparable<? extendsComparable<?>>>``1``Integer``"1"``String

没有泛型:

private static void method(Number arg1, Number arg2) {

即使没有泛型,也可以传入

Integer
Double

只有所涉及的类型是

final
,您才能在没有泛型的情况下执行此 *** 作:

private static void method(String arg1, String arg2) {    // Yes, they're both Strings, guaranteed.

我可以考虑使用泛型的一种极端情况,以确保它们是准确的类型。如果您有一个

final
班级,并且设置了一个上限,则可以将其限制为同一班级。

public <T extends MyFinalClass> void method(T arg1, T arg2) {    // Yes, they're both MyFinalClasses}

但是,如果没有泛型,您可以做同样的事情。

public void method(MyFinalClass arg1, MyFinalClass arg2) {    // Yes, they're both MyFinalClasses}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/4924718.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-12
下一篇2022-11-12

发表评论

登录后才能评论

评论列表(0条)

    保存