WXHL 学习总结连载(四)

本文深入探讨了Objective-C中的协议与继承机制,详细解释了协议的概念、声明方法、遵守协议的方式,以及协议与继承的区别。通过实例代码展示了如何在Objective-C中使用协议和继承来实现统一接口的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、关于协议(Protocol)的介绍

1
)概念:协议指多个对象之间协商的一个接口对象,协议提供了一些方法用在协议的实现者和代理者
     
之间通讯的一种方式

2
)声明一个协议@protocol协议的名字<基协议一个协议可以遵守另一个协议:
     
基协议(这个协议就拥有了基协议中所有方法的声明)

3
)协议中不能声明成员变量,只能有方法声明。

4
)协议中声明方法,默认是required 表明方法是必须要实现的,否则会有系统警告,但不会报错

5
)协议中@optional表明方法是可选的(可以实现也可以不实现)

6
)使用协议:某个类遵守协议,类名后面<协议名> ;所谓遵守协议就是:类拥有了协议中所有方法的声明,
     
必须实现协议中规定的方法;一个类可以遵守多个协议(类拥有所有协议中声明的方法,必须实现所有
     
协议中规定的方法)

7
)一个协议可以遵守另一个协议,遵守协议后就拥有了另一个协议所有方法的声明,同时还可以添加自己的方法

8
)一个协议可以遵守多个协议,并拥有所有基协议的方法

9
)协议的声明与使用方法实例代码:
 
    1
、添加一个基于Protocol命名为MyProtocol.h 文件  声明一些协议方法例如: 

2、定义一个Person.h文件中使用协议MyProtocol  例如:3、在Person类的.m文件中实现协议方法例如10OC中没有多继承,但可以通过协议实现,可通过使用多个协议来实现类似多继承的方法。

11
)协议主要用来统一规范接口;统一接口的方法:继承和协议

12
)协议与继承的区别
     
    1
、继承也可以统一规范接口:子类继承父类所有的方法(可以不用重写,除非父类的方法不适合子类),
        
重写后的方法名与父类一样,达到了统一接口的目的;子类中可以增加成员变量
 
    2
、协议:一个类遵守协议,类就具有协议中所有的方法,如果多个类都遵守同一个协议,这些类都有协议
        
中规范的方法,达到了统一接口的目的;协议中不能有成员变量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值