博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Swift - 协议(protocol)
阅读量:6708 次
发布时间:2019-06-25

本文共 565 字,大约阅读时间需要 1 分钟。

1,Swift中协议类似于别的语言里的接口,协议里只做方法的声明,包括方法名、返回值、参数等信息,而没有具体的方法实现。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
protocol
Person
{
    
//读写属性
    
var
name:
String
{
get
set
}
     
    
//只读属性
    
var
age:
Int
{
get
}
     
    
//类型方法
    
class
func
method1()
     
    
//实例方法
    
func
method2() ->
Int
     
    
//突变方法
    
mutating
func
method3()
}

 

2,协议可以继承另一个协议
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
protocol
Animal
{
    
func
move()
}
 
protocol
Bird
:
Animal
{
    
func
song()
}
 
class
Chiken
:
Bird
{
    
func
song(){
        
println
(
"母鸡咯咯"
)
    
}
     
    
func
move(){
        
println
(
"母鸡走"
)
    
}
}

3,如果某个类集继承了某个父类,又遵循了某个协议,那么冒号后面应该先写父类,再写协议

1
2
class
CC
:继承的父类, 协议1, 协议2{
}

转载地址:http://igxlo.baihongyu.com/

你可能感兴趣的文章
kindeditor粘贴word文档内容时去除格式的方法?如何设置为默认无文本格式呢?
查看>>
IT 名企招聘信息
查看>>
this web application instance has been stopped already解决办法
查看>>
【计导作业】链表——成绩统计2
查看>>
Xen安全架构sHype/ACM策略配置图文教程
查看>>
汇编语言--百度百科
查看>>
OpenGL学习之路(三)
查看>>
sql ltrim rtrim
查看>>
几点基于Web日志的Webshell检测思路
查看>>
mysql sql_mode 之 NO_ENGINE_SUBSTITUTION
查看>>
嵌入式系统 Boot Loader 技术内幕【转】
查看>>
(windows)一台电脑上安装两个Mysql服务
查看>>
教你如何在Kali Linux 环境下设置蜜罐?
查看>>
微信公众号开发之公众号支付
查看>>
主域控角色迁移和夺取(转载)
查看>>
HDFS High Availability Using the Quorum Journal Manager
查看>>
Sql日期时间格式转换
查看>>
mesos+marathon+zookeeper的docker管理集群亲手搭建实例(环境Centos6.8)
查看>>
你应了解的4种JS设计模式
查看>>
垃圾收集器Serial 、Parallel、CMS、G1
查看>>