一、我们前面反复强调:

当1个类遵守了1个协议,这个类就拥有这个协议中的所有的方法声明

仅仅是只有声明而已,还要自己实现

如果不实现呢,也不会报错,只是给1个警告

1.下面呢,给大家介绍两个修饰符

@required 与 @optional

这两个修饰符,是专门用来修饰协议当中的方法的

2.例如,我这儿有个协议

SportProtocol

这个协议中有两个方法

爬山的方法 - (void)paShan;

游泳的方法 - (void)swim;

我们刚刚说过,协议中的方法可以用两个关键字来修:@required 和 @optional

#import <Foundation/Foundation.h>

@protocol SportProtocol < NSObject >

@require

【@required与@optional的区别 Objective-C语言】相关推荐

  1. python和java的区别-Java和Python的区别 学Python语言好还是Java好

    原标题:Java和Python的区别 学Python语言好还是Java好 相信不少想学编程的人都在纠结到底学Java好还是学Python,毕竟当下正是Python的火热时期,然而Java也同样占据编程 ...

  2. gets和fgets函数及其区别,C语言gets和fgets函数详解

    gets和fgets函数及其区别,C语言gets和fgets函数详解 每当讨论 gets 函数时,大家不由自主地就会想起 1988 年的"互联网蠕虫",它在 UNIX 操作系统的 ...

  3. puts和fputs函数及其区别,C语言puts和fputs函数详解

    puts和fputs函数及其区别,C语言puts和fputs函数详解 与 gets 函数一样,对于 puts 函数,同样建议使用 fputs 函数来代替 puts 函数.如下面的示例代码所示: int ...

  4. python是一种代表简单主义思想的语言_python区别于其他语言的优势是什么

    python区别于其他语言的优势: 1.简单,Python是一种代表简单主义思想的语言 阅读一个良好的Python程序就感觉像是在读英语一样,尽管这个英语的要求非常严格!Python的这种伪代码本质是 ...

  5. Java配置Spring时REQUIRED和REQUIRES_NEW 的区别

    REQUIRED  假如当前正要执行的事务不在另外一个事务里,那么就起一个新的事务  比如说,ServiceB.methodB的事务级别定义为PROPAGATION_REQUIRED, 那么由于执行S ...

  6. 指针与指针变量的区别(C语言)

    提示:本章主要谈及个人对C语言指针和指针变量的理解 文章目录 前言 一.指针是什么? 二.指针变量是什么? 三.知识拓展 总结 前言 指针是C语言中的一个很重要的concept,掌握指针的应用,可以使 ...

  7. 【学习日志】2022.09.02 (C++)strcmp和stricmp、strcmpi三者之间的区别、C语言判断文件后缀名、ZENO Audio Update、TEN MINUTES PHYSICS

    (C++)strcmp和stricmp.strcmpi三者之间的区别 (strcmpi在Windows C标准库实现,但不在GNU C标准库实现) #include <string.h> ...

  8. spring 事务传播REQUIRED 与 NESTED的区别

    总结 NESTED 似乎与REQUIRED 是一样的,但是他们是不同的. 若a 调用b 方法.a方法为REQUIRED,且在a中捕获b方法异常.注意 a ,b 方法不要在一个service中,不然事务 ...

  9. 字符数组和字符串的区别,C语言字符数组和字符串区别详解

    C 语言中并不存在字符串这个数据类型,而是使用字符数组来保存字符串.那么,字符数组就一定是字符串吗? 不一定,字符数组和字符串千万不要混淆.字符串是一种特殊的字符数组,并且C语言提供了大量适用于字符串 ...

最新文章

  1. 仲兆鹏 160809329 第5次
  2. 计算机、数学、运筹学等领域的32个重要算法
  3. 什么原数据更容易平稳_【时间序列】-航空数据预测
  4. Windows下使用gvim格式化xml文件
  5. 沈阳航空航天大学 计算机学院 罗,沈阳航空航天大学计算机学院院长率队来校交流考察...
  6. R-CNN 《Rich Feature Hierachies for Accurate Object Detection and Semantic Segmentation》论文笔记
  7. python coding_Python终极coding
  8. 直接插入排序比较次数_程序员必须要会的直接插入排序算法
  9. dubbo 服务压测_Dubbo高性能网关--Flurry介绍
  10. SPGridview的使用
  11. html上传图片至数据库,Django 图片上传到数据库 并调用显示
  12. Script:脚本获得用户User DDL包括system、object grant
  13. Nginx 从入门到放弃(五)
  14. python与办公自动化-python办公自动化:自动进行word文档处理和排版
  15. fanuc换刀宏程序详解_FANUC宏程序使用举例
  16. 常用软件分类运维或个人收藏软件必备,及文件夹打包下载
  17. ExcelDNA开发视频教程-刘永富-专题视频课程
  18. STM32学习(电容触摸按键)
  19. C# 使用HTMLhelp生成chm文件添加搜索并解决搜索找不到主题的问题
  20. 本地编码修改和编码详解

热门文章

  1. 开始使用Typora
  2. 同等学力--申硕报考(在职研究生)
  3. MATLAB对图形做Hadamard变换和离散余弦变换
  4. VScode 安装中文插件不生效,如何解决
  5. 06-vscode常用插件安装(例如中文插件,打开浏览器等)
  6. 内参矩阵、外参矩阵、旋转矩阵、平移矩阵、单应矩阵、本征矩阵、基础矩阵
  7. 【ROS话题通信】发布者和订阅者
  8. 压缩出来的zip文件带有密码?如何取消zip密码?
  9. 方正、营销通软件面试20110419
  10. 关于小程序wx.getUserProfile接口