使用data class的一大好处就是不用自己写一堆toString()方法的代码了。
一个简单的类的写法:
如果我们想打印这个类的一个对象的属性值,一般直接调用toString()
但是如果不重写,打印出来的就是对象的地址
那么想要看到具体的数据就要重写toString()方法
细看Java中也是如此写法,但是当类的属性值特别多的时候,toString()内容也会异常的多
Kotlin则提供data class的方式来解决这个问题:
则此时打印结果为:
可见data class 的<code>toString</code>函数会被复写为打印具体属性的值
data class使用的一些限制:
/***********************************************************************************/
深入学习data class 和 class的区别
第一条不再说明
components的用法为:
component1表示主构造方法中的第一个属性,component2表示主构造方法中的第二个属性,
若主构造方法中有n个参数,则提供component1...componentn

copy的用法为:
以原来的对象为模板拷贝一个新的对象,可以指定所有或部分参数的值
打印结果:
hashCode的用法为:
data类复写<code>hashCode</code>函数 , 比较对象属性的值 , 而非地址
非data类比较:
data类比较:
作者:听着music睡
出处:http://www.cnblogs.com/xqxacm/
Android交流群:38197636
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。