码迷,mamicode.com
首页 > 其他好文 > 详细

重写toString()

时间:2018-10-11 01:37:53      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:年龄   getter   图片   bubuko   方便   tab   使用   main   clip   

  刚开始用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;
    }
    
    @Override
    public 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;
    }
}

技术分享图片

 

重写toString()

标签:年龄   getter   图片   bubuko   方便   tab   使用   main   clip   

原文地址:https://www.cnblogs.com/IShuPing/p/9769856.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!