Android Java方法调用

时间:2010-12-08 20:04:47

标签: java android

Cursor c = getContent().query(Phones.CONTENT.URI, null, null, null, null);

你如何阅读这行代码?首先,这是方法调用中的这两个方法调用吗?我想当你在方法调用中有方法调用时,第一个方法调用是第二个方法调用的括号内的参数。我读错了吗?

第二,这行代码到底是做什么的?

3 个答案:

答案 0 :(得分:0)

getContent()将获得一些对象实例,然后使用它来调用query(...)

它正在做类似的事情......

Content content = getContent();
Cursor c = content.query(...);

所以这段代码正在做的是从内容查询中获取结果(通过query)并将其放入Cursor对象中,该对象可用于访问结果。

答案 1 :(得分:0)

它调用一个方法,然后将结果用作另一个方法的目标。

请注意,这与Android无关......这是完全正常的Java。

作为一个更简单的例子:

String x = "hello there";
int y = x.substring(2, 4).length();

答案 2 :(得分:0)

对于你的第二个问题,如果不了解背景,很难确切知道这是做什么的。一般的答案是它向某些内容提供者查询某些信息,而不传递任何信息(4个空值)。

关于如何阅读,让我试试。

光标c

这声明了一个Cursor

类型的变量(c)

<强>的getContent()

这将调用正在执行的类的getContent()方法或它的超类,在我最好的猜测中,它返回一个ContentResolver(或类似的)对象。

<强>查询(....)

在getContent()方法的返回值(很可能是ContentResolver)上调用“query”方法,同时将一些值传递给方法。

<强> Phones.CONTENT_URI

定义Phone ContentProvider的URI的静态/常量变量。