刚开始用Java写软件的时候,无论知不知道JavaBean,都没有习惯重写toString(),大神除外,书上或者老师可能提到过要重写toString(),但初学者很难注意到这个操作。

  重写toString()有什么用呢?最大的用处就是方便调试,System.out.println()是很常用的调试方式。如,有个JavaBean类Person,里面有很多属性,如名字、年龄和性别等,当你需要打印查看属性时,一般初学者常常一行打印一条属性,而且懒得加上提示字符串,当代码量增加,逻辑变得复杂,这样的调试会试代码变得臃肿,而且会给自己调试带来麻烦,重复写提示字符串的繁琐、忘记先打印哪个属性和多个同类型的打印导致混乱等问题很容易让自己烦躁。

  所以,凡是写JavaBean类或者类似的类时,不妨重写toString(),以清晰明了的方式展示类及其属性,方便自己也方便他人。

  以下是代码简例:

/*** 重写toString() */
public class Test {public static void main(String[] args) {Person person = new Person("学生A", 20, true);/*System.out.println("name: " + person.getName());System.out.println("age: " + person.getAge());System.out.println("isBoy: " + person.isBoy());*/System.out.println(person);}}class Person {private String name;private int age;private boolean boy;public Person(String name, int age, boolean boy) {this.name = name;this.age = age;this.boy = boy;}@Overridepublic String toString() {return "Person ["+ "name:" + name +"; age:" + age  +"; isBoy:" + boy  + "]";}/*** eclipse下快速生成getter/setter的方法* 非常常使用* 快键键:* 1. alt + shift + s"* 2. r* 3. tab* 4. 回车* 5. shift + tab* 6. 回车*/public String getName() {return name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public boolean isBoy() {return boy;}public void setBoy(boolean boy) {this.boy = boy;}public void setName(String name) {this.name = name;}
}

转载于:https://www.cnblogs.com/IShuPing/p/9769856.html

重写toString()相关推荐

  1. 如何:重写 ToString 方法(C# 编程指南)

    如何:重写 ToString 方法(C# 编程指南) C# 中的每个对象都继承 ToString 方法,此方法返回该对象的字符串表示形式.例如,所有 int 类型的变量都有一个 ToString 方法 ...

  2. Eclipse中快速为类提供构造器、get()、set()方法、重写toString()、hasCode()、equals()等

    当我们写一个类的时候,经常会写构造器,get().set()方法等,以及打印类的信息需要重写toString方法等.这些eclipse已经为我们提供好了,只需直接点击输出即可.方法如下: Eclips ...

  3. 重写toString()方法(Java篇)

    java 中重写toString()方法 toString()方法 一般出现在System.out.println(类名.toString()); toString()是一种自我描述方法 本身返回的是 ...

  4. java中的tostring_java 中重写toString()方法

    toString()方法 一般出现在System.out.println(类名.toString()); toString()是一种自我描述方法 本身返回的是 getClass().getName() ...

  5. java实体类如果不重写toString方法,会如何?

    先认识一下Object Object 类的 toString 方法 返回一个字符串,该字符串由类名(对象是该类的一个实例).at 标记符"@"和此对象哈希码的无符号十六进制表示组成 ...

  6. [转载] JAVA面向对象之代码块 继承 方法的重写 super关键字与重写toString()方法介绍

    参考链接: 可以重写Java中的私有方法吗 JAVA面向对象之代码块与继承 代码块分类 局部代码块 作用:限制变量生命周期 书写位置:在方法中 构造代码块 开发中很少使用 书写位置:类中  方法外 调 ...

  7. [转载] java重写toString()方法

    参考链接: 在Java中重写toString() 前言: 在你兴高采烈的写完一个类,创建测试类时,创建对象,传入参数,调用对象,以为会得到参数值,但突然发现输出的是" 类名@什么东东?(其实 ...

  8. [转载] java之重写toString

    参考链接: Java程序的输出| 重写Override 1.toString()就是是重写,对于一般的对象来说都会有这个方法,其实这个方法的目的,主要就是将对象按字符串的方式输出出来:打个比方,比如一 ...

  9. 为什么要重写toString()方法和hashcode()方法

    一.toString(): 在Object类里面定义toString()方法的时候返回的对象的哈希code码,这个hashcode码不能简单明了的表示出对象的属性.所以要重写toString()方法. ...

最新文章

  1. emwin之基于某个事件或标志创建某个界面的一种方法
  2. 观点 | 容器内应该运行什么?
  3. 国人主导研发的 HAWQ® 成 Apache® 顶级项目
  4. 英伟达jetson TX1的caffe-ssd配置
  5. 看看牛人们是怎么评价编程语言的
  6. memoryerror: Unable to allocate array with shape (60000, 28, 28) and data ty
  7. 网速慢?NO可能是路由器的原因?
  8. Linux系统启动全过程
  9. opencv 读取CV_16U图像 c++
  10. 不通过ios审核 安装苹果app php,iOS APP审核被拒的解决之道(2.1)
  11. Give root password for maintenance 问题的解决方法
  12. 拓端tecdat|R语言highfrequency高频金融数据导入
  13. Hadoop大数据技术原理与应用课后习题答案汇总
  14. esp连接服务器的协议,【零知ESP8266教程】WIFI TCP协议通信 TCP服务器示例
  15. 文件被后台程序占用无法删除_Windows系统中,教你彻底删除C盘的顽固文件,瞬间多出10个G...
  16. 仿百度文库解决方案(三)- 利用JODConverter把文档转换成pdf格式
  17. Elasticsearch中keyword和numeric对性能的影响分析
  18. 电脑操作系统维护10条基础知识!
  19. MacbookPro中 Idea快捷建(记录中)
  20. OSChina 周三乱弹 —— 无他,唯眼熟尔

热门文章

  1. 霸气!考 692 分想当程序员,女王式发言:也没见男生考得比我好
  2. samba安装部署及简单用法
  3. 60、IPv6配置实验之RIP
  4. 小猿圈Python之实现京东秒杀功能代码
  5. HBase数据快速导入之ImportTsvBulkload
  6. 原生、无依赖的web弹层组件——HLayer.js
  7. mysql性能优化学习笔记-存储引擎
  8. 《转》推荐系统经典论文文献及业界应用
  9. WindowsAPI开发常用资料
  10. Matlab系统信息、系统命令和跨平台