发表日期: 2021-07-22 11:02:44 浏览次数:119
常州网络公司|常州网站推广专家_常州网站建设服务中心
湖塘镇隶属江苏省常州市武进区,地处常州城南,武进区中部,北连常州茶山、永红、雕庄,南与庙桥、南夏墅、礼嘉相邻,东邻遥观,西接牛塘。镇中心位于东经119°95′44″,北纬31°73′25″。镇域面积84.06平方千米(2017年),总人口397402人(2017年),是武进区政府所在地。
2018年10月9日,湖塘镇入选2018年度全国综合实力千强镇前100名。2018年,全镇完成地区生产总值238亿元、公共财政预算收入16.5亿元。 [9] 截至2020年6月,湖塘镇辖45个社区。
协议可以要求它的遵循者实现指定的构造器。
你可以像书写普通的构造器那样,在协议的定义里写下构造器的声明,但不需要写花括号和构造器的实体,语法如下:
protocol SomeProtocol { init(someParameter: Int)}
protocol tcpprotocol { init(aprot: Int)}
你可以在遵循该协议的类中实现构造器,并指定其为类的指定构造器或者便利构造器。在这两种情况下,你都必须给构造器实现标上"required"修饰符:
class SomeClass: SomeProtocol { required init(someParameter: Int) { // 构造器实现 }}protocol tcpprotocol { init(aprot: Int)}class tcpClass: tcpprotocol { required init(aprot: Int) { }}
使用required修饰符可以保证:所有的遵循该协议的子类,同样能为构造器规定提供一个显式的实现或继承实现。
如果一个子类重写了父类的指定构造器,并且该构造器遵循了某个协议的规定,那么该构造器的实现需要被同时标示required和override修饰符:
protocol tcpprotocol { init(no1: Int)}class mainClass { var no1: Int // 局部变量 init(no1: Int) { self.no1 = no1 // 初始化 }}class subClass: mainClass, tcpprotocol { var no2: Int init(no1: Int, no2 : Int) { self.no2 = no2 super.init(no1:no1) } // 因为遵循协议,需要加上"required"; 因为继承自父类,需要加上"override" required override convenience init(no1: Int) { self.init(no1:no1, no2:0) }}let res = mainClass(no1: 20)let show = subClass(no1: 30, no2: 50)print("res is: (res.no1)")print("res is: (show.no1)")print("res is: (show.no2)")
以上程序执行输出结果为:
res is: 20res is: 30res is: 50
备案号: 苏ICP备11067224号
CopyRight © 2011 书生商友信息科技 All Right Reserved
24小时服务热线:400-111-6878 E-MAIL:1120768800@qq.com QQ:1120768800
网址: https://www.768800.com 网站建设:上往建站
关键词: 网站建设| 域名邮箱| 服务器空间| 网站推广| 上往建站| 网站制作| 网站设计| 域名注册| 网络营销| 网站维护|
企业邮箱| 虚拟主机| 网络建站| 网站服务| 网页设计| 网店美工设计| 网站定制| 企业建站| 网站设计制作| 网页制作公司|
400电话办理| 书生商友软件| 葬花网| 调温纤维| 海洋馆运营维护| 北京保安公司| 殡仪馆服务| 殡葬服务| 昌平殡葬| 朝阳殡葬|
欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系
服务热线:400-111-6878