[英]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.