Android官方开发语言——kotlin 粗浅了解

数据类 data class

当你在kotlin代码中发现一个类,有data标记,则代表这个类是个数据类。

个人理解类似Javabean的作用,可直观理解为数据实体类。

数据类,放在 println(data类对象),打印出来的是 成员属性,不是以往Java的那种一个代表对象的数字。

这个数据类,唯一特殊的地方,就是有个copy方法。拷贝对象,并可以通过构造指定你要修改的属性的值。

 

Object关键字  

对象声明是在第一次被访问到时延迟初始化的

被关键字声明的,可以直接调用里面的方法,是不是很像Java的静态方法呢

BookShelf.showBooks()

对象声明的初始化过程是线程安全的(Java此时的synchronized原地打滚中.jpg。这就很单例了。

 

对象表达式----通过对象表达式可以越过类的定义直接得到一个对象,可用作匿名对象或者出现在表达式的右边出现。匿名对象,也不要觉得就多神奇,就是不需要看到真正的对象名称,不知名的实例化,object实现某个接口啊啥的,作为一个对象存在,然后好实现接口的方法。

伴生对象(companion object),你可以认为是Java的静态的替代方案吧,但是这个伴生对象是个另外独立的对象,可以独立实现接口的方法等等。伴生对象和Java的静态特别的相似,初始化是在容纳它的类创建时开始的。

 @JvmStatic 注解,可以将伴生对象的成员生成为真正的静态方法和属性。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值