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、关于命名规则:可以以_开头,但是不能以数字开头;
OC基础1:一些基本概念的更多相关文章
- OC基础笔记目录
OC基础(1) Objective-C简介 OC和C对比 第一个OC程序 面向对象思想 OC基础(2) 类与对象 类的设计 第一个OC类 对象方法的声明和实现 类方法的声明和实现 OC基础(3) 对象 ...
- OC基础3:一些基本概念
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.关于NSLog函数中的“%2i”: ( ...
- OC基础2:一些基本概念
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.字符常量是存放在单引号中的单个字符,字 ...
- OC基础9:预处理程序
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1. 关于#define语句: (1). ...
- OC基础8:分类和协议
"OC基础"这个分类的文章是我在自学Stephen G.Kochan的<Objective-C程序设计第6版>过程中的笔记. 1.关于分类(category): (1) ...
- 五.OC基础--1.多态,2.类对象,3.点语法,4.@property&@synthesize,5.动态类型,内省(判断对象是否遵循特定的协议,以及是否可以响应特定的消息)
五.OC基础--1.多态, 1. 多态概念,定义:多态就是某一类事物的多种形态: 表现形式: Animal *ani = [Dog new]; 多态条件:1.有继承关系 2.有方法的重写 2.多态代码 ...
- 【OC基础语法考试】
OC基础语法已经全部学完,但是这些知识只是最基础的,还有很多高级知识,这个可能需要后面慢慢的去学习才能体会到.接下来我会总结前面的OC基础语法,如果大家发现有什么不正确的地方,请指正,小弟是新生,多请 ...
- iOS 阶段学习第11天笔记(OC基础知识)
iOS学习(OC语言)知识点整理 一.OC基础知识 1)#import 用于导入头文件,预处理阶段加载引用,只加载一次. 2)OC 依赖于Foundation框架下的头文件Foundation.h, ...
- OC基础 文件管理
OC基础 文件管理 1.文件管理类NSFileManager对象的创建: NSFileManager *fm = [NSFileManager defaultManager]; 2.文件操作: (1 ...
随机推荐
- android JNI调用 execlp函数
execlp()函数 execlp函数简单的来说就是C语言中执行系统命令的函数 execlp()会从PATH 环境变量所指的目录中查找符合参数file 的文件名, ...
- Min Stack 解答
Question Design a stack that supports push, pop, top, and retrieving the minimum element in constant ...
- Notepad++背景颜色设置
经常试用notepad++看代码,白色的背景连续看的时间长了眼睛很容变花,所以找了相关的设置选项,分享给大家 具体设置步骤如下: 然后如下设置 这样前景色背景色已经发生改变了哟,下面再修改下选中行的背 ...
- android之ListPreference的用法_PreferenceActivity用法
首先,我们明确,preference是和数据存储相关的. 其次,它能帮助我们方便的进行数据存储!为什么这个地方一定要强调下方便的这个词呢?原因是,我们可以根本就不使用,我们有另外的N种办 ...
- java中反射学习整理
转载请注明:http://blog.csdn.net/j903829182/article/details/38405735 反射主要是指程序能够訪问.检測和改动它本身的状态或行为的一种能力. jav ...
- 9年经验,总结SEO职业瓶颈
昨天与某集团的副总与部门总监沟通了一些关于SEO发展与瓶颈的问题,有很多感触,今天整理出来分享给大家.其实关于SEO瓶颈这个话题已经不是一年两年了,很多新人老人越来越困惑,9年历程一路风雨走来,希望能 ...
- 批处理Bat实现整合定时关机或取消定时关机
@echo off :start choice /c:12 /m "输入1为设置定时关机,2为取消定时关机: " if errorlevel 2 goto cancel if er ...
- JDBC_mysql---防sql注入,存储图片
package PreparedStatement_sql注入; import java.io.File; import java.io.FileInputStream; import java.io ...
- 控制器的view的加载优先级
拿到控制器后,控制器的view是在什么时候按照什么优先级创建加载的? 1.控制器内部的view是延迟加载 1> 用到时再加载(loadView) 2> 加载完毕后会调用控制器的viewDi ...
- Sql Server获得每个表的行数
SELECT o.[name], ddps.[row_count] FROM sys.indexes AS i INNER JOIN sys.objects AS o ON i.[object_id] ...