我正在尝试理解我在现有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中的泛型方法所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)