在android中打印`this`变量

eug*_*ene 8 logging android this

有时printf("%p",这个)有助于查看不同的实例.

什么是在Android中相当于?
(打印出this变量的地址或address对实例唯一的(可能不是))

似乎我可以new像那样界面OnTouchListener,我如何打印一些东西来区分它们的不同实例?

K-b*_*llo 10

这样的事情应该这样做:

android.util.Log.i("Instance", "This is: " + this);
Run Code Online (Sandbox Code Playgroud)

默认情况下,toString执行Object将打印类类型加上一个哈希码,可以认为与C++中的this指针有些相同.

toString类的方法Object返回一个字符串,该字符串由对象为实例的类的名称,at符号字符'@'和对象的哈希码的无符号十六进制表示组成.换句话说,此方法返回一个等于值的字符串:

getClass().getName() + '@' + Integer.toHexString(hashCode())
Run Code Online (Sandbox Code Playgroud)

如果一个对象提供了不同的实现toString(),例如String,那么你可以使用基本toString()方法的上述规范实现来获得相同的结果.