委托

package weituo
/*
委托模式是软件模式设计中的一项基本技巧,在委托模式中,
有两个对象参与处理同一个请求,接受请求的对象将请求委托
给另一个对象来处理
Kotlin直接支持委托模式,更加又要,通过关键字by实现
*/

//-------------类委托----------
/*
类的委托即一个类中定义的方法实际是调用另一个类的对象的方法来实现的
以下实例中派生类Derived集成了接口Base所有方法,并且
委托一个传入的Base类的对象来执行这些方法
*/

//创建接口
interface Base{
fun print()
}
//实现此接口的被委托的类
class BaseImpl(val x:Int):Base{
override fun print(){print(x)}
}
//通过关键字by建立委托泪
class Derived(b:Base):Base by b

fun main(args: Array<String>) {
val b=BaseImpl(10)
Derived(b).print()
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 委托模式 委托模式也就是代理模式,它的原理基本如下图 Subject:抽象主题类 该类的主要职责是声明真实主题与代...
    Rhett_S阅读 3,126评论 2 4
  • 简述 讲到Kotlin中的扩展,不得不说代码的设计原则之一:开闭原则,意思是对扩展开放,对修改关闭。在程序需要进行...
    i校长阅读 3,856评论 0 3
  • 系列文章全部为本人的学习笔记,若有任何不妥之处,随时欢迎拍砖指正。如果你觉得我的文章对你有用,欢迎关注我,我们一起...
    我爱吃栗子啊阅读 9,815评论 5 26
  • 1 类委托 Derived 的超类型列表中的 by句表示b 将会在 Derived 中内部存储。 并且编译器将成转...
    NiceDream阅读 5,430评论 1 3
  • 一. UIScrollView的创建和常用属性 UIScrollView是UIView的子类,为所有滚动视图的基类...
    CarsonChen阅读 2,981评论 0 0

友情链接更多精彩内容