小编典典

Java语法说明

java

嗨,我在Grid视图中的android文档中遇到了以下代码。

gridview.setOnItemClickListener(new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View v, int position, long id) {
            Toast.makeText(HelloGridView.this, "" + position, Toast.LENGTH_SHORT).show();
        }
    });

在此 < ?>(作为stackoverflow添加的空间不允许没有空间)指示/做什么?


阅读 215

收藏
2020-11-30

共1个答案

小编典典

<?>是通用类型的通配符,这意味着AdapterView的通用类型可以是任何东西。

更具体地说,在这种情况下,方法上的参数可能会接收带有绝对任何泛型类型的AdapterView。请注意,如果您想限制泛型类型,可以执行以下操作:

AdapterView<? extends myClass)

这将泛型类型限制为myClass或任何扩展myClass的类型。

请注意:

 AdapterView <?> and AdapterView<? extends Object>

是相同的。

您可以在通配符部分中找到其他信息

Java泛型文档

2020-11-30