您的位置:首页 > 编程语言 > Java开发

java:toString方法重写

2017-12-25 19:39 387 查看
//禁商转,转标处。
//java有自带的toString方法

//***************java自带的toString()方法***************
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());        //返回对象名加上对象的哈希算法地址(指针地址)
}

//*********java自带的toString()方法********
public class dog {                                        //dog类
int size;                                               //dog类所有拥有的属性。
}

//***********测试类(执行/main类)*************
public class run  {
public static void main(String[] args) {
dog dog1=new dog();                                                //创建dog类对象dog1。
dog1.size=30;                                                           //给对象属性赋值。
System.out.println(dog1);                //执行输出语句,dog1对象调用toString。
}
}
/*运行结果:
dog@6d1e7682
*/

//***********dog类/重写toString方法*************

public class dog {
int size=30;
static dog dog1=new dog();
public String toString() {

return "Dog[size="+size+"]";
}
}

//*************测试类**********

public class run extends dog {
public static void main(String[] args) {

System.out.println(dog1);
}
}
/*运行结果:
Dog[size=30]
*/

说明自带的toString方法只能返回对象的指针地址,想正确返回对象的属性值还是需要重写一次,话说这算是bug么。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: