当前位置: 首页 > news >正文

基于django的电子商务网站设计设计上海网站

基于django的电子商务网站设计,设计上海网站,房地产微网站,wordpress熊掌号出图改造委托和代理 实现委托和代理,使用的是by关键字。 这里设计一个场景:假设某个演员被要求唱歌,但是不会唱歌,就委托一个会唱歌的歌手在后台唱歌。 如何实现这个需求,下面就开始直接写代码 首先定义一个唱歌能力接口 int…

委托和代理

实现委托和代理,使用的是by关键字。
这里设计一个场景:假设某个演员被要求唱歌,但是不会唱歌,就委托一个会唱歌的歌手在后台唱歌。
如何实现这个需求,下面就开始直接写代码
首先定义一个唱歌能力接口

interface Ising {fun singing()
}

然后创建一个歌手对象,实现这个唱歌接口

class SingerA:Ising {override fun singing() {println("歌手甲正在努力唱歌")}
}

然后在定义一个演员对象,并且用by关键字委托歌手唱歌。

class Performer:Ising by SingerA() {
//   可以不重写singing函数,也可以重新singing,做一些自己的操作,这就算多态的意思了override fun singing() {println("演员甲正在努力表演")SingerA().singing()}
}

下面在main函数调用演员的唱歌

fun main(args: Array<String>) {val performer = Performer()performer.singing()
}
//运行结果为:
//演员甲正在努力表演
//歌手甲正在努力唱歌

object关键字-单例对象

上面的代码有一个坑,重写的时候SingerA().singing()这种调用方式,就等于又创建了一个新的歌手对象调用了唱歌函数。
Kotlin提供了一个关键字object。用object关键字代替class声明对象,这个对象就是单例的,也就是编译运行的时候直接在内存创建了一个全局唯一的对象。
下面是使用object定义对象的代码:

object SingerA:Ising {override fun singing() {println("歌手甲正在努力唱歌")}
}

因为歌手对象使用了object声明,所以委托歌手的时候就不能带括号了
下面是委托歌手需要修改的代码

class Performer:Ising by SingerA {override fun singing() {println("演员甲正在努力表演")SingerA.singing()}
}
http://www.yayakq.cn/news/524325/

相关文章:

  • 昆明网站免费制作设计网站考虑哪些因素
  • 上海模板网建站网站怎么做动态主图
  • 网站的主题定位金湖县建设局网站
  • 个人网站免费模板下载北京市建设工程交易网信息网
  • 做网站需要有网络推广运营外包
  • 最新钓鱼网站源码工信部网站icp备案
  • 青岛建网站公司深圳网站建设单位
  • 购物网站为什么做移动端wordpress主标题副标题
  • 甘肃省建设厅职业资格注册中心网站360提示的危险网站
  • 自己做的网站能卖么wordpress动漫博客模板
  • 阿里巴巴 网站建设网店建设方案
  • 建设一个征婚网站的程序可以做宣传图的网站
  • 大连响应式网站建设无极网
  • 政务服务网站建设情况汇报购物网站开发面试
  • 惠山做网站公司网站平台搭建包括哪些
  • 哈尔滨网站建设价位广州商务网站建设
  • 建盏茶杯知识梅州seo
  • 公司关于网站建设的通知山东品牌建设网站
  • asp转换手机网站wordpress 技术文档
  • 网站开发与设计英文书籍适合中小企业的管理软件
  • 常州网站建设最易郑州网站建设十大公司
  • 北京做网站公司排名浩森宇特网站开发当前城市定位功能
  • 网站建设论文基础摘要h5微信网站建设
  • 个人做网站有什么坏处用户体验的重要性
  • xxx网站建设与优化推广哈尔滨自主建站模板
  • 如何在腾讯云建设网站贵州省住房和城乡建设厅网网站首页
  • 知乎做笔记的网站工业做网站
  • 专门做养老院的网站办公室效果图
  • 网页制作工具可以发布网站吗郑州做网站的公司哪家
  • 如何做一个网站赚钱密云微网站建设