[英]Worklight: Performance of calling java static method vs object creation
[英]Android static method vs object creation
我的Android應用程序有問題。 我目前有一個CatDownloadService
,它假設在后台執行2件事:
我似乎無法在實現此目標的各種方式之間做出決定。 有人可以指出我正確的方向嗎? 我對每種方法的了解都在()中。
解析JSON
CatDownloadService中的方法(因為僅在此類中需要我的JSON解析)
parseCatJSON(jsonString);
CatJSONParser.java中的方法(更簡潔,因為JSON解析的邏輯本身在類中)
CatJSONParser catJsonParser = new CatJSONParser(); catJsonParser.parseCatJSON(jsonString);
CatJSONParser.java中的靜態方法(與2相同。不需要創建對象)
CatJSONParser.parseCatJSON(jsonString);
通過DatabaseAccessObject添加到數據庫
CatDatabaseAccessObject.java中的方法(使用DBHelper的每個上下文都不同)
CatDatabaseAccessObject catDAO = new CatDatabaseAccessObject(this); catDAO.addCat(cat);
CatDatabaseAccessObject.java中的靜態方法(確保與數據庫只有1個連接)
CatDatabaseAccessObject.addCat(cat);
將Cat圖片保存到外部存儲
CatStorageManager.java中的方法
CatStorageManager catStorageManager = new CatStorageManager(); catStorageManager.writeCatImage(catInputStream);
CatStorageManager.java中的靜態方法
CatStorageManager.writeCatImage(catInputStream);
我真的迷路了。
我通過兩種方式對靜態方法進行分類-
如果他們保留一些誤導和不必要的參考文獻,將對其有害。
public static InputStream is = null; public static void harfulStaticMethod(InputStream is) { BatteryManagerC.is = is; /* Read Content */ /* Leave open or is have used at multiple places */ }
非有害僅用於訪問方法變量
public static void unharmFullStaticMethod(int a, int b) { int c = a + b; Log.e("Some Is=", String.valueOf(c)); }
由於您的問題涉及面很廣,並引出許多要點。 所以它只反映一個視圖。 希望對你有幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.