2016-05-12 18 views
0

我絕對是初學者!我不知道要用這種方法。如果可以,請你幫助我。如何使用複雜的方法更新數據庫像這樣?

我有一類名爲「DatabaseConnector」 這個類裏面我有這樣的方法:

// Update Database function 
public void UpdateNote(long id, String title, String note, String counts, String limits) { 
    ContentValues editCon = new ContentValues(); 
    editCon.put(TITLE, title); 
    editCon.put(NOTE, note); 
    editCon.put(COUNTS, counts); 
    editCon.put(LIMITS, limits); 

    open(); 
    database.update(TABLE_NAME, editCon, ID + "=" + id, null); 
    close(); 
} 

我想使用另一類這個方法,但是當我寫這篇文章我的其他類:

   DatabaseConnector.UpdateNote(rowID, null, null, null, null); 

日食說我應該使這一方法靜態的,而當我有這樣的方法靜態,關於「DatabaseConnector」類中的方法的這一部分,要成爲靜態太:

open(); 
    close(); 

當我讓它們也是靜態的。整個班雞飛狗跳,越來越多的錯誤...

現在我有這樣的問題:

1 - 我怎麼可以在我的其他類使用此方法,而沒有讓他們的靜態或破壞整個事情...

2-我應該如何編寫方法來更新其中一個字段? (以下簡稱 「罪狀」)...

我不知道該寫什麼後:

DatabaseConnector.UpdateNote(ROWID,NULL,NULL,NULL,NULL);

謝謝大家。

+0

爲什麼你不能在其他類中使用它們嗎?什麼是日食說法? –

+1

這是因爲你正在'DatabaseConnector'(類)上調用方法。相反,您應該創建該類的實例(或使用其工廠來獲取實例),並使用該實例調用「UpdateNote」 - 而不是類本身。嘗試搜索代碼以查看在其他地方如何調用此方法並執行相同操作。 – alfasin

+0

什麼是*複雜的方法*?這與[code obfuscation](https://en.wikipedia.org/wiki/Obfuscation_%28software%29)有關嗎? – Andreas

回答

0

確保UpdateNote()靜態,然後才能使用它,創建類的實例:

DatabaseConnector databaseConnector = new DatabaseConnector(null); 

,並用它來調用方法:

databaseConnector.UpdateNote(rowID, null, null, null, null); 
相關問題