簡體   English   中英

Android Java方法調用

[英]Android Java method invocation

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

您如何閱讀此行代碼? 首先,這兩個方法調用是否在方法調用內? 我以為,當您在方法調用內進行方法調用時,第一個方法調用是第二個方法調用括號內的參數。 我讀錯了嗎?

其次,這行代碼的確切作用是什么?

getContent()將獲取一些對象實例,然后使用該實例調用query(...)

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

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

因此,這段代碼正在做的是從內容查詢(通過query )獲取結果,並將其放入Cursor對象中,該對象可用於訪問結果。

它調用一個方法,然后將結果用作另一種方法的目標。

請注意,這與Android無關...這是完全正常的Java。

舉一個簡單的例子:

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

對於第二個問題,在不了解上下文的情況下很難確切知道其作用。 一個通用的答案是,它在不傳遞任何信息的情況下向某些內容提供者查詢某些信息(4個空值)。

至於閱讀方式,讓我嘗試。

光標c

這聲明了Cursor類型的變量(c)

getContent()

這將調用執行類或其超類的getContent()方法,以我的最佳猜測,它返回一個ContentResolver(或類似的對象)對象。

查詢(....)

對getContent()方法的返回值(很可能是ContentResolver)調用“ query”方法,同時將一些值傳遞給該方法。

電話.CONTENT_URI

一個靜態/常量變量,用於定義Phone ContentProvider的URI。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM