九、Kotlin基础学习:1、Companion的扩展方法和扩展属性;2、一般类的扩展方法和扩展属性;3、委托;

1、Companion的扩展方法和扩展属性;

        为一个类的伴生对象添加新的扩展方法和扩展属性。

        条件:已有伴生对象。

        【案例】伴生对象的扩展方法

       

 Helper.kt

 MainActivity.kt

日志:

 

 【案例】伴生对象的扩展属性

MainActivity.kt

 

日志:

 

【案例】添加val的companion扩展属性 

 

日志:

 


 

2、一般类的扩展方法和扩展属性;

【案例】扩展方法

 Student.kt

MainActivity.kt

 

日志: 

 【案例】扩展属性

MainActivity.kt

 

日志: 


 

3、委托;

什么是委托?

       某某事情委托别人去办。

       软件开发中有一种设计模式叫委托模式,或者叫代理模式。A类的工作交给B类来完成。多个类将共同的工作抽取出来交给另一个类来完成。如果业务发生变化,只需要修改委托类即可。

在kotlin中如何实现委托?

(1)类委托(方法委托)

       将某某方法委托给另一个类去实现

       语法:

             class YYY:Interface  by XXX(){}

       表示YYY这个类实现了与XXX共同的Interface接口,在定义YYY时,可以不实现Interface接口的方法,将这个实现交给XXX来做。

【案例】

 IWork.kt

WorkA.kt

 

WorkB.kt

 

MainActivity.kt

 

日志:

 

(2)属性委托

         将某某属性委托给另一个类

         语法:

                  var/val yyyProperty:类型 by XXX()

         将当前类的yyyProperty属性,委托给XXX类来实现。

【案例】student和teacher类都有age这个属性,都需要大于0,设计时,将student的age委托给teacher来处理。

 

 Student2.kt

Teacher.kt

 

MainActivity.kt 

日志:

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

¥伊人独醉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值