Android静态方法与对象创建

时间:2013-10-03 13:02:57

标签: java android

我的Android应用程序出现问题。我目前有一个CatDownloadService,假设在后台做了两件事:

  1. 下载猫的信息(id,name,imageid等...) 从服务器作为JSON
  2. 将JSON解析为Cat对象
  3. 通过a将Cat对象插入数据库 CatDatabaseAccessObject
  4. 下载猫的图片
  5. 将图像保存到外部存储设备。
  6. 我似乎无法在实现这一目标的各种方式之间做出决定。有人能指出我正确的方向吗?我对每种方法的理解都在()中。

    解析JSON

      CatDownloadService中的
    1. 方法(因为我的JSON解析只会是 这课所需要的)

      parseCatJSON(jsonString);
      
    2. CatJSONParser.java中的
    3. 方法(Neater,因为JSON的逻辑 解析本身就是一个类)

      CatJSONParser catJsonParser = new CatJSONParser();
      catJsonParser.parseCatJSON(jsonString);
      
    4. CatJSONParser.java中的静态方法(与2.相同。不需要对象 创建)

      CatJSONParser.parseCatJSON(jsonString);
      
    5. 通过DatabaseAccessObject

      添加到数据库中
        CatDatabaseAccessObject.java中的
      1. 方法(使用的每个上下文 DBHelper是不同的)

        CatDatabaseAccessObject catDAO = new CatDatabaseAccessObject(this);
        catDAO.addCat(cat);
        
      2. CatDatabaseAccessObject.java中的静态方法(确保有 只有1个连接到DB)

        CatDatabaseAccessObject.addCat(cat);
        
      3. 将Cat图像保存到外部存储空间

          CatStorageManager.java中的
        1. 方法

          CatStorageManager catStorageManager = new CatStorageManager();
          catStorageManager.writeCatImage(catInputStream);
          
        2. CatStorageManager.java中的静态方法

          CatStorageManager.writeCatImage(catInputStream);
          
        3. 我真的迷路了。

1 个答案:

答案 0 :(得分:0)

我以两种方式对静态方法进行分类 -

  • 如果他们保留一些误导和不必要的引用,则会造成危害。

    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 */
    }
    
  • Non Harmful仅用于访问方法变量

    public static void unharmFullStaticMethod(int a, int b) {
    int c = a + b;
    Log.e("Some Is=", String.valueOf(c));
    }
    

由于您的问题很广泛并导致很多问题。所以它只反映了一个视图。希望它对你有所帮助