为什么我的@Override toString()方法从未在Android上调用过?

Luk*_*kas 2 android overriding tostring android-activity

似乎我toString()在Activity中的方法实现永远不会被调用,无论我做什么.我总是从java.lang.Object(喜欢Ljava.lang.Object;@4059d6a8)而不是"我被召唤!" 得到结果.我已经阅读了大量文章并浏览了大量代码,我无法弄清楚我做错了什么.有人可以向我解释如何覆盖该方法?这是我的代码:

public class OverrideTestActivity extends Activity {
    private int number = 27;
    private String[] items = { "MyFirstItem", "MySecondItem" };
    public Object[] stuff = { number, items };

    @Override
    public void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        setContentView(R.layout.test);
        OverrideTest();
    }

    public void OverrideTest() {
        TextView result = (TextView) findViewById(R.id.textView1);
        result.setText(stuff.toString());
    }

    @Override
    public String toString() {
        return "I was called!";
    }
}
Run Code Online (Sandbox Code Playgroud)

非常感谢提前!

Luk*_*rog 6

您将覆盖toString()该类的方法OverrideTestActivity并调用toString()对象数组:这就是您获取Object该类的默认实现的原因.