范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

golang2021面向对象(37)继承基本介绍和示意图

  继承可以解决代码复用,让我们的编程更加靠近人类思维。 当多个结构体存在相同的属性(字段)和方法时,可以从这些结构体中抽象出结构体(比如刚才的
  Student),在该结构体中定义这些相同的属性和方法。
   
   
   
  其它的结构体不需要重新定义这些属性(字段)和方法,只需嵌套一个 Student 匿名结构体即可。 [画 出示意图]
   
   
   
   
   
  也就是说:在 Golang 中,如果一个 struct 嵌套了另一个匿名结构体,那么这个结构体可以直接访 问匿名结构体的字段和方法,从而实现了继承特性。
   
   
       嵌套匿名结构体的基本语法
  type Goods struct {
  Name string
  Price int
  }
  type Book struct {
  Goods        //这里就是嵌套匿名结构体 Goods Writer string
  }
   
   
   
      快速入门案例
  Ø        案例
  我们对 extends01.go  改进,使用嵌套匿名结构体的方式来实现继承特性,请大家注意体会这样编程
   
  的好处
   
   
  Ø        代码实现
  package main
   
   
   
  import (
  "fmt"
   
  )
  //编写一个学生考试系统 type Student struct {
  Name string Age int Score int
  }
   
   
   
  //将 Pupil 和 Graduate 共有的方法也绑定到 *Student func (stu *Student) ShowInfo() {
   
   
  fmt.Printf("学生名=%v 年龄=%v 成绩=%v ", stu.Name, stu.Age, stu.Score)
  }
   
  func (stu *Student) SetScore(score int) {
  //业务判断 stu.Score = score
  }
   
   
   
  //小学生
  type Pupil struct {
  Student //嵌入了 Student 匿名结构体
   
  }
   
   
   
  //显示他的成绩
   
   
   
  //这时 Pupil 结构体特有的方法,保留
  func (p *Pupil) testing() { fmt.Println("小学生正在考试中.....")
  }
   
   
   
  //大学生, 研究生…
   
   
   
   
  //大学生
  type Graduate struct {
  Student //嵌入了 Student 匿名结构体
   
  }
   
   
   
   
  //显示他的成绩
   
  //这时 Graduate 结构体特有的方法,保留
  func (p *Graduate) testing() { fmt.Println("大学生正在考试中.....")
  }
   
   
   
  //代码冗余.. 高中生.... func main() {
  //当我们对结构体嵌入了匿名结构体使用方法会发生变化 pupil := &Pupil{}
  pupil.Student.Name = "tom~" pupil.Student.Age = 8 pupil.testing() pupil.Student.SetScore(70) pupil.Student.ShowInfo()
   
   
   
   
  graduate := &Graduate{} graduate.Student.Name = "mary~" graduate.Student.Age = 28 graduate.testing() graduate.Student.SetScore(90) graduate.Student.ShowInfo()

湖北振华化学股份有限公司,2021年前三季度业绩预增公告本公司董事会及全体董事保证本公告内容不存在任何虚假记载误导性陈述或者重大遗漏,并对其内容的真实性准确性和完整性承担个别及连带责任。重要内容提示1湖北振华化学股份有限公司(以下简称公朝云集团股权激励方案落地凝聚团队为企业发展赋能9月23日朝云集团(6601。HK)发布公告称,公司已决议根据于2021年7月23日采纳的购股权计划授出购股权,以及根据于2021年6月3日采纳的受限制股份奖励计划授出受限制股份。上市以来首次实施股权激励朝云集团(6601。HK)如何带飞业绩中国商报(记者马嘉)营收毛利双增长后,朝云集团(6601。HK)发布上市以来首份股权激励计划,向更高的业绩目标发起冲击。9月23日,今年上半年交出亮眼成绩单的朝云集团发布公告,向公隔膜行业需求高景气星源材质定增60亿加码湿法及涂覆隔膜项目9月27日晚,星源材质(300568。SZ)发布第五届董事会第十四次会议决议公告。公告称,公司逐项审议并通过了关于公司2021年度向特定对象发行A股股票方案的议案。根据星源材质公告蓝思科技抢占技术核心领跑VR及汽车玻璃新领域过去两年,以电子为代表的科技板块市场表现颇为亮眼。根据IDC的最新预测,VR行业未来五年的行业复合增速将达到41。40。对比新能源汽车20212025年CAGR为41。53,VR的品牌再升级,我们可以永远相信五菱!点亮地标广告为周迅庆生人民需要什么,五菱就造什么掀开五菱全球化战略新篇章五菱x周迅x地标马克户外广告用心入戏,赋予角色生命认真做事,成就人民品牌,前一句话应该是周迅对自己演艺生涯的总结,而后一句话则是对好事成霜!梦洁联动全国地标解锁点亮代言福星?今日,霜降时逢秋暮露成霜,几份凝结几份阳。今天,我们迎来秋季的最后一个节气,霜降。梦洁x霜降x地标马克户外广告灯光秀气肃而凝,露结为霜矣。进入霜降之后天气渐冷,水汽凝华于地表和植被行业革命!地标马克招聘!引领裸眼3D方向开发新媒体沉浸式体验国内领先的数字内容运营平台,致力打造跨行业创新数字体验地标马克是国内领先的地标媒体内容运营平台,致力于提供跨行业创新数字体验,并助推视觉体验产业全面数字化升级。自成立以来,深度聚焦好暖心!这街4刘宪华生日,品牌线下地标广告送祝福!赞好看!世界一刘,火遍全球他在舞台上是魅力无限的全能音乐制作人!他在生活中是幽默热情的搞笑团宠他专注实力,全能发展亦坚守初心他追求完美,偶遇敏感也能0压力稳赢想知道他的秘密武器吗?雅漾x刘世界动画日地标马克为何受到全球顶级漫画媒体平台青睐?都是回忆!地标马克带你重温童年经典动画片世界动画日,每年的10月28日,是为了庆祝史上第一部动画影片的公开放映,而特别定下的日子。世界动画日x快看漫画x地标马克户外广告灯光秀今天,程序员,OPPO给他们独一无二的宠爱!地标广告致敬最美技术诗人有多少程序员不知道,他们的节日1024是2的十次方,二进制计数的基本计量单位之一,同时也是程序员的常用数字代表。因此有部分互联网机构倡议将每年的10月24日定为程序员节,在这一天建
新能源车省钱吗?10后算一笔账,到底新能源车与燃油车谁更划算?车,虽然是一辆代步工具,可每年实际花在车上面的费用其实也不少,随着新能源技术不断的发展,在用车人群里面逐渐出现两种人群,传统燃油车车主,与新能源车车主。不管是传统的燃油车,还是新能官宣丨比亚迪新车即将开启预售,馈电油耗4。2L,综合续航1300KM随着全球能源问题逐渐突出,众多行业均受到不同程度的影响,当然汽车行业受到的冲击也非常强。众多汽车品牌都已经开始着手新能源汽车领域的布局,但因各种问题,纯电动车型还没有完全被消费者所我同事说我写代码像写诗把自己平时写代码的习惯跟大家分享一下1。定义配置文件信息有时候我们为了统一管理会把一些变量放到yml配置文件中例如用ConfigurationProperties代替Value使用JDBCUtils工具类代码实现packageutilimportjava。io。FileReaderimportjava。io。IOExceptionimportjava。net。URLimportjava。s10个C库函数的那些坑函数是C语言的基石,函数库是面向过程编程语言的重要组成部分。通常,使用库函数只需要理解其接口即可,接口和注释通常会较友好地透露如何使用的细节,而一些库函数手册还会增加一些有代表性的松下PTFRZ120C激光高清投影机FRZ120C松下FRZ120投影机代理松下科视爱普生NEC视美乐等品牌松下工程机专用长短焦镜头广角镜头短焦镜头长焦镜头高速维修投影机投影机租赁卓视屏幕工程电动幕快速折叠幕画框幕全息幕背投硬幕背投软幕弧形幕纱幕这届网友感情深!鸿星尔克开抢45分钟内销售破亿双十一成交数据显示,不可能再有几年前那种势如破竹的惊奇,但是今年有一个破亿的品牌让人惊喜他就是鸿星尔克,天猫开抢45分钟内有382个成交额破1亿元的品牌其中就有鸿星尔克,而且它与华双十一手机混战太精彩,小米最大的对手竟然是iphone12刚结束的双十一里,手机市场可谓如火如荼,品牌商们各显神通,不仅在销售上手段频出,在文字游戏上也下足功夫。和往常一样,每家品牌的战报都会彰显自己是某某冠军,就像小学期末的时候,每个学贾跃亭特斯拉是战友不是竞争对手近日,特斯拉CEO马斯克在一段自己的采访透露,曾花费7。5万美元从一个人手中买下了特斯拉汽车商标,他派了一个脾气非常好的人去买,终于买到了。马斯克在评论中表示,如果当时无法获得特斯全家桶准备就绪,配件库已完成更新,iPhone13配件全面更新小结拿到iPhone13已经一个半月了,各路大神早就晒出了自己的iPhone13评测。那么对于我而言,iPhone13的体验是怎么样的呢?用起来顺不顺手,好不好用呢?我们简单来聊一下。ipadmin6边框宽度合理性ipadmin6边框宽度跟iPadair近似很多网友吐槽说ipadmin6的边框太宽,不够窄。认为作为全面屏的平板,这款平板应该更加窄一些才好看。这个问题提出几乎一边倒地被认为是苹