理解Java中的泛型方法

理解Java中的泛型方法,第1张

概述我正在尝试理解我在现有Android应用中阅读的方法.该方法的声明如下:protected<V,TextendsResult>voidpostObject(finalVinput,finalTresult,finalConnectionTargetendpoint,finalbooleanrestart,finalintid,finalLoaderProviderprovider,finalServiceCal

我正在尝试理解我在现有Android应用中阅读的方法.该方法的声明如下:@H_419_1@

@H_419_1@

protected <V, T extends Result> voID postObject(final V input, final T result, final ConnectionTarget endpoint, final boolean restart, final int ID, final LoaderProvIDer provIDer, final ServiceCallbacks<T> callbacks) {

我刚读过关于泛型的内容,所以我或多或少地了解这里发生了什么,但不完全清楚.因此我有两个问题:@H_419_1@

>应该输入一个类型(即一个类),还是应该只是一个任何类型的对象?
>< V,T扩展结果>意思?据我所知,这个地方应该总是描述方法的返回类型,但它已经在它背后说空了,加上它说V和T.
@H_419_1@

有人可以给出一个如何调用这个方法的例子吗?@H_419_1@

解决方法:@H_419_1@

我将它分成更小的部分,以便更容易理解.
在该部分:@H_419_1@

@H_419_1@

protected <V, T extends Result> voID

< V,T扩展结果>是一个可选部分(通常不存在),用于指定泛型类型(或未知对象类型).这由<和>并且任何逗号分隔值都是一个单独的对象(对象’T’必须扩展Result).@H_419_1@

这意味着稍后在方法调用中:@H_419_1@

@H_419_1@

... postObject(final V input,...

该输入属于对象类型V,这意味着它可以是您想要的任何对象.@H_419_1@

编辑@H_419_1@

调用此方法的基本示例是:@H_419_1@

@H_419_1@

//Now post itpostObject("my input object", null /*Your result class*/, null /*your endpoint*/, true, 0, null /*your loaderProvIDer*/, null /*your callbacks*/);
总结

以上是内存溢出为你收集整理的理解Java中的泛型方法全部内容,希望文章能够帮你解决理解Java中的泛型方法所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

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

原文地址: http://outofmemory.cn/web/1107080.html

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

发表评论

登录后才能评论

评论列表(0条)

保存