初始化变量的三种方式:
1.直接赋值
2.重写init方法
3.使用 '!'(强制解包属性) '?'(可选存储属性) 两种符号来进行
初始化的方法可以有多个,但是每个方法名都是init,只是他们的参数需要不一样。
使用convenience 来标示的init方法,必须在方法体中调用一个已经存在的init方法
使用subscript可以给类自定义下标(好吧,我是第一次见到)
使用 extension可以无限的扩展已有的类,结构体,或者给枚举类型增加新的功能。据视屏(极客)所说:可以使用这种方式仿制java中的‘package’实现!
classcom{ classxqi{ classHello{ funcsayHello(){ println("Helloxiaoqi") } } } } varh=com.xqi.Hello() h.sayHello() extensioncom.xqi{ classUser{ funcgetName()->String{ return"xiaoqi" } } } varu=com.xqi.User() println("useris\(u.getName())")
使用protocol可以来定义一个其他用来实现此协议的规范,如果是类似 ‘interface’,不知道有没有人打我呢!
其中:可以使用mutating来定义一个协议中的突变方法,来做其他的事情!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。