在做网易云课堂的java进阶的第二周的作业的时候看到了一个这样的写法
System.out.println(clock); //clock是一个Clock类的对象
在学习c++的时候是不能用 cout直接输出类的,那个这个是怎么回事呢/
JAVA中tostring方法的作用,因为它是Object里面已经有了的方法,而所有类都是继承Object,所以“所有对象都有这个方法”。
就是说,在所有的对象中都有一个叫做 toString的方法 我们执行这条语句
给出了一个clock.Clock@7d4991ad的输出,这个是告诉我们clock对象的地址 这个地址以字符串的形式给出
而在这个题目中,我们可以重写这个toString()方法,来方便我们得到一些我们想要的东西
public String toString(){
return String.format("%02d:%02d:%02d",hour.getvalue(),minute.getvalue(),second.getvalue());
}
//这个方法返回时钟的时间,并将时间用字符串的形式表示
我们输入23 59 59
System.out.println(clock);
得到 23:59:59
参考文章:
关于java的toString的用法
http://blog.sina.com.cn/s/blog_46d528490100tpru.html