OC基础1:一些基本概念
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的《Objective-C程序设计第6版》过程中的笔记。
1、关于类方法和实例方法:
(1)、类方法是直接使用类引用的方法,不需要实例化就可以调用方法,实例方法对应于具体的实例,需要实例化才能够使用这些方法;
(2)、类方法以“+”开头,实例方法以“-”开头;
(3)、不管是什么方法,都要定义在@implementation部分里面;
(4)、一般在项目中类方法都是设置为工具类使用的。
2、在程序的@interface部分中声明方法的时候,比如:
@interface Fraction: NSObject
-(void) print;
-(void) setNumerator: (int) n;
-(void) setDenominator: (int) d;
@end
在这段代码中,方法前面的负号(-)表示这是一个实例方法;如果是正号(+),则这是一个类方法。
方法前的括号里是返回值,如果返回值为void,那么在方法末尾可以不执行return语句,或者可以执行以下语句:
return;
3、方法的组成分析:
- (void) setNumerator : (int) n;
方法类型 返回类型 方法名称 方法有参数 参数类型 参数名称
4、Fraction *myFraction;
myFraction = [Fraction alloc];
myFraction = [myFraction init];
可以简写为:
Fraction *myFraction = [[Fraction alloc] init];
5、关于int main (int argc, char * argv[]):
argc是命令行总的参数个数,
argv[]是argc个参数;
比如你输入:
test a.c b.c t.c
则
argc = 4
argv[0] = "test"
argv[1] = "a.c"
argv[2] = "b.c"
argv[3] = "t.c"
6、实例方法可以直接访问某一个实例的变量,而类方法只针对类,没法访问具体的实例;
7、关于命名规则:可以以_开头,但是不能以数字开头;
转载于:https://www.cnblogs.com/shayneyeorg/p/4611571.html
OC基础1:一些基本概念相关推荐
- iOS开发面试知识整理 – OC基础 (二)
iOS | 面试知识整理 – OC基础 (二) 1.C和 OC 如何混编 xcode可以识别一下几种扩展名文件: .m文件,可以编写 OC语言 和 C 语言代码 .cpp: 只能识别C++ 或者C语言 ...
- OC基础第四讲--字符串、数组、字典、集合的常用方法
OC基础第四讲--字符串.数组.字典.集合的常用方法 字符串.数组.字典.集合有可变和不可变之分.以字符串为例,不可变字符串本身值不能改变,必须要用相应类型来接收返回值:而可变字符串调用相应地方法后, ...
- OC基础回想(十二)协议
在OC基础(十一)中我们讨论了类别和非正式协议的奇异之处.在使用非正式协议时.能够仅仅实现你想要获得响应的方法.也不必在对象中声明不论什么内容来表示该对象可用作托付对象. 全部这些任务能够用最少的代码 ...
- OC基础 代理和协议
OC基础 代理和协议 1.协议 (1)oc语言中得协议:一组方法列表,不需要我们自己实现,由遵守协议的类来实现协议所定制的方法. (2)协议的使用步骤:制定协议-->遵守协议-->实现协议 ...
- (转)OpenLayers3基础教程——OL3基本概念
http://blog.csdn.net/gisshixisheng/article/details/46756275 OpenLayers3基础教程--OL3基本概念 从本节开始,我会陆陆续续的更新 ...
- OC基础15:内存管理和自动引用计数
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.什么是ARC? (1).ARC全名为A ...
- oc基础 不可变字符串的创建和使用
oc基础 不可变字符串的创建和使用 简介:下面都是字符串基本用法. 1.字符串的创建 //创建oc常量字符串NSString *str=@"hello world!";NSLog ...
- Java基础之面向对象的概念 继承---组合----枚举类
Java基础之面向对象的概念 继承---组合----枚举类 本章作为面向对象概念的最后一篇,但是作为一名java程序员在面向对象的这条路上还很长. 一.继承与组合简介 继承是实现类重用的重要手段,但是 ...
- Kafka教程(一)基础入门:基本概念、安装部署、运维监控、命令行使用
Kafka教程(一)基础入门 1.基本概念 背景 领英->Apache 分布式.消息发布订阅系统 角色 存储系统 消息系统 流处理平台-Kafka Streaming 特点 高吞吐.低延迟 cg ...
最新文章
- 与工作流关联的服务器发生意外错误
- C++实现大数的加法
- 贪心,POJ(2709)
- Three.js学习笔记
- Java官方相关资源文件的获取教程
- du命令、df命令用法
- codeql php,使用codeql 挖掘 ofcms
- typedef有什么用_我是怎么用C++恰饭吃的
- 正点原子STM32F103学习笔记(二)
- 京东登录界面html css,css制作京东登录页面 css样式,京东店面装修怎么写CSS样式?...
- 从金庸小说到DDoS防护
- linux内核文档翻译之——V4L2-framework.txt V4L2 API Specification
- 最值得收藏的电脑使用习惯, 让你使用电脑的效率轻松提升数倍(持续更新中)
- 关于宇宙大爆炸的理论模型
- 浅谈Android之SurfaceFlinger相关介绍(一)
- php下拉框css样式,纯CSS实现的下拉菜单
- 番外篇(1)模块次序表、代数环及其检测算法
- 阿里云dataworks/maxcomputer和自建集群的对比
- 暗黑三的一些你需要注意的事情
- Forever at your feet---Oh Susanna[静静地聆听雨声!]
热门文章
- centos7远程桌面端口_CentOS7启用远程桌面连接
- js获取精确宽度/高度(带小数位像素)
- Java笔记-Log4j在Spring Boot中的使用
- 前端笔记-JavaScript中放json数组要注意的地方(构造灵活的echarts)
- 前端笔记-vue cli引入sementic-ui(sementic-ui-vue)
- C++|Qt工作笔记-杀死进程(Linux与Windows通用)
- Qt工作笔记-信号与槽参数匹配问题
- 多实例多进程网络编程PHP,php socket网络编程基础知识(四):多进程
- js导出的xlsx无法打开_vue将数据导出为excel文件就是如此简单
- 界面上下固定_【技术浅析】三通道机床自动上下料控制方法应用