Java基础(七):重写toString()方法

1、 Java默认的toString方法来自Object类

在Java中每个类都直接或者间接继承Object类,toString()方法同样是来自于Object

其实不难理解,在没有重写toString的前提下,每次执行System.out.println(对象引用),这个方法就会默认调用一个继承来自Object类型对象的toString方法。

2、重写toString()方法的意义所在

简单一句话就是重写toString()可以理解为是对对象打印输出时候的一种格式化。这样符合业务逻辑,显示结果人性化。

Object类中的toString():
在这里插入图片描述
1)是字符串就直接打印
2)数字则需要转化为字符串打印
3)是一个对象,则直接打印该对象的hash码(类似于@15dc2556),它的值大概就是等于getClass().getName+'@'+Integer.toHexString(hashCode()),我这乔治脑袋看着都晕,hash码 这玩意是给机器看的,平凡的人类是看不懂的鸭,什么?你要挑战?你相信你就是不一样的烟火?那行,我就举个例子给你看看,你可以试着在一个实体类中…啥?你要我自己来?额…行,我来就我来…

3、测试
3.1 编写一个叫Person的实体类
public class Person{
	private String name;
	private Integer age;
	public String getName(){
		return this.name;
	}
	public void setName(String name){
		this.name = name;
	}
	public Integer getAge(){
		return this.age;
	}
	public void setAge(Integer age){
		this.age = age;
	}
	public Person(){
	
	}
	public Person(String name,Integer age){
		this.name = name;
		this.age = age;
	}
}
3.2编写测试类
 public static void main(String[] args) {
       
        Person person = new Person();
        person.setAge(12);
        person.setName("不一样的烟火");
        System.out.println(person);

    }

3.3没有重写toString()方法的测试效果

在这里插入图片描述

3.4 加上toString()方法的测试效果

现在的开发工具基本都有自动生成tostring() 方法的快捷键,alt+insert
在这里插入图片描述

4、总结

1、没有重写toString,每执行System.out.print(Object o)会默认调用Object的toString()方法,情况如下
在这里插入图片描述
2、重写toString(),每执行System.out.println()会调用重写的toString()方法,情况则会根据重写的方法打印输出成自己想得到的格式

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值