【问题标题】:Logging / Debugging the state of my objects记录/调试我的对象的状态
【发布时间】:2018-06-28 05:37:09
【问题描述】:

假设我有一个名为 Car 的自定义对象。其中的所有字段都是私有的。

public class Car {

    private String mName;
    private String mBrand;
    private String mModel;

    public Car(String name, String brand, String model) {
        mName = name;
        mBrand = brand;
        mModel = model;
    }

    // more class methods here
}

当我收到这种类型的对象时,我想检查其字段的状态/值。我分析它的两种方法是:

  1. 在我的 Car 类中创建 getter 方法,然后每次我想检查时都使用它(在 Log.d 语句中)
  2. 在 Android Studio 或 Eclipse 中使用调试器

有没有其他方法可以提高效率?

【问题讨论】:

    标签: java android debugging


    【解决方案1】:

    我在我的在线课程中找到了这个绝妙的解决方案。您可以使用对象的toString 方法。就我而言,我添加了

    public class Car {
        ...
    
        @Override
        public String toString() {
            return "Car{" +
                    "mName='" + mName + '\'' +
                    ", mBrand='" + mBrand + '\'' +
                    ", mModel='" + mModel + '\'' +
                    '}';
        }
    }
    

    当您想检查对象的状态时,只需执行以下操作:

    Log.d("MainActivity", "Current car: " + carInstance);
    

    干杯!

    【讨论】:

    • 您也可以使用 JSON 库(例如 Gson)来构建相同的字符串
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-21
    • 1970-01-01
    • 2011-06-26
    • 1970-01-01
    • 2013-08-19
    • 2021-07-23
    相关资源
    最近更新 更多