《OC疯狂讲义》笔记(一)

1、OC简介

Objective-C    继承自C和smalltalk

最小程度增加了面向对象的部分,是一门面向对象编程语言

1986. Next 得到授权

关于 Cocoa 框架(96)

Cocoachina.com

code4app.com

2、OC HelloWorld

OC的文件有哪几种?

.h  头文件(声明类)

.m  OC源文件(类的实现)

#import <Foundation/Foundation.h>  //导入文件

//main函数是OC得主入口函数

int main(){

NSLog(@"Hello World!");

return 0;

}

1)NSLog的使用

NSLog()  特点:

1)OC中的日志输出函数,

2)自动换行

3)带有时间戳

4)输出OC的特有的类型 %@(NSString)

5)在使用NSLog的时候,在格式控制字符串的末尾加上一个\n是不起作用

printf    特点:

1)不能自动换行

2)不能打印OC中的字符串

2)@符号的使用

1)@""   表示OC中的字符串

2)@特殊单词  OC的关键字

3)NS 前缀的说明

NextStep --> Next Software

3、OC对比C快速入门

1) 源文件的差异

2)数据类型

block   块

id  万能指针

BOOL YES/NO   1/0

SEL  选择器

Boolean 布尔类型 true/false  1/0

3)关键字和标示符

@xxx

4)语句结构(分支和循环)

oc 增强型for循环

forin(快速枚举)

for(NSString *str  in arr){

str 每次存放的值是不一样的

}

5)函数对比

C 函数:功能相对独立的代码段

void test(int x){

}

OC 方法:功能相对独立的代码段

1)对象方法

- 开头

对象调用

-(返回值类型) 方法名;

-(返回值类型) xxx:(参数类型) 形参名;

对于有参数的方法来说,方法名是:"xxx:"

2)类方法

+ 开头

类名取调用

6)逻辑类型

BOOL / Boolean

4、面向对象编程

面向对象是面向过程而言

面向对象是基于面向过程

面向对象和面向过程,都是一中编程思想

面向对象:

首先是把功能封装到对象中

完成一个事情,需要多少个对象来做

面向过程:

完成一件事情,需要哪些步骤

类和对象

类:一类事物的特征的抽象

对象:满足类的特征的一个个体

一个类可以创建多个对象

类的提取

名词提炼法

类的创建步骤:

1)类名

2)类的属性(实例变量、成员变量)

3)行为(方法)

5、第一个OC类

类的使用:1)声明一个类    2)实现一个类

类的声明:(定义属性和声明方法)

@interface 类名 : 父类名

{

//类的属性的定义

}

//类的方法声明

@end

类的实现:(方法的实现)

@implementation 类名

@end

对象方法的定义:

-(返回值类型) 方法名;

-(返回值类型) xxx:(参数类型) 形参名;

对于有参数的方法来说,方法名是:"xxx:"

-(返回值类型) xxx:(参数类型) 形参名  andXXX:(参数类型) 形参名;

方法名:      xxx:                andXXX:

[对象名 xxx:实参1 andXXX:实参2];

方法的调用

[对象名 方法名];   //调用无参方法

[对象名 方法名:实参];

6、对象的存储细节

对象的创建:

Student 类

[Student new];

1)申请存储空间

2)给类的成员变量初始化(基本数据类型 0 ,NSString null)

3)返回申请的内存空间的首地址(8个)

//1)创建了一个Student 类型的 指针变量 stu

//2)使用Student 类创建了一个对象 stu

Student *stu = [Student new];

sizeof(stu);   //8

7、对象方法和函数之间的区别

对象方法有归属,方法是属于某一个对象

每个对象只能调用字节对象方法

所有函数都是平行的

只要先声明函数,我可以在任何函数中调用其他函数

8、创建类的时候,常见的错误

调用了一个 只是定义而没有实现的方法,会报错!

时间: 2024-08-05 08:06:56

《OC疯狂讲义》笔记(一)的相关文章

《OC疯狂讲义》笔记(二)

1.NSString的使用 C的字符串保存:1)字符数组      2)字符串的指针 OC中又专门的字符串处理的类(有字符串类型) NSString  不可变的字符串 NSMutableString 可变字符串 NSString 是OC字符串的类 1) NSString保存字符串 NSString *str = @"abc";    //用str保存字符串常量 创建空字符串 NSString *str = [NSString new]; str = @"xxxx";

《OC疯狂讲义》笔记(三)

1.类方法 1)什么是类方法 对象方法: -(返回值类型)方法名:(形参的类型) 形参名; 类方法 +(返回值类型)方法名:(形参的类型) 形参名; 2)类方法怎么去定义 +(返回值类型)方法名:(形参的类型) 形参名; 3)类方法的使用 调用: 对象方法:  [对象名    方法名:实参] 类方法:    [类名      方法名:实参] 4)使用类方法的好处 1)提高效率 2)减少内存空间占用 3)代码更加简洁 缺点:不能访问对象的成员变量 5)对象方法和类方法的对比 类方法        

《OC疯狂讲义》笔记(四)

1.两个关键字:self 和 super self 可以用在对象和类方法中 1)self用在对象方法中:指代的时调用当前对象方法的那个对象 2)self用在类方法中:指代的时当前类(实质是类对象) 总结:当self在方法中使用,谁调用这个方法,self指代的就是谁 super: 使用super的地方,一定存在继承关系 super调用父类的方法 2.面向对象的其他特性:继承 继承概念: 假设有两个类:A   B 继承是两个类之间的关系 假设声明B类的时候, 1)导入父类的头文件 2)设定继承关系

《OC疯狂讲义》笔记(五)

1.OC中的点语法 点语法: 对象名.成员变量名   (点语法不是访问成员变量,而是方法的调用) 它是一个编译器特性 点语法作用:可以替换传统的get和set方法的调用 点语法的前提: 首先得先有 get和set方法 点语法实质: 调用get和set方法 如果点语法出现在 = 的左边,表示设置值,相当于调用了set方法 p.age = 10; 替换为:[p setAge:10]; 如果点语法出现在 = 的右边,表示获取值,相当于调用了get方法 int age = p.age; 替换为:int

李刚OC语言疯狂讲义笔记

设计一个”学生“类1> 属性* 姓名* 生日用结构体作为类的实例变量(生日) #import <Foundation/Foundation.h> //定义生日的结构体 typedef struct{ int year; int month; int day; }MyDate; @interface Person : NSObject { @public NSString *_name;//定义姓名 MyDate _birthday;//定义生日 } @end @implementatio

java疯狂讲义笔记整理(第二版第一部分)

第一章    java语言概述 1.1    java语言的发展简史 1990末:    sun公司“Green计划”(James Gosling领导)        ----目的是智能家电编写一个通用嵌入式控制系统,为此创建oak 1992夏天:    "Green计划"完成新平台的部分功能 1992年11月:    "Green计划"被转为"FirstPerson有限公司"-一个sun的全资子公司,致力于创建一个高度互动的设备 1994夏天:

java8--类加载机制与反射(java疯狂讲义3复习笔记)

本章重点介绍java.lang.reflect包下的接口和类 当程序使用某个类时,如果该类还没有被加载到内存中,那么系统会通过加载,连接,初始化三个步骤来对该类进行初始化. 类的加载时指将类的class文件读入内存,并为之创建一个java.lang.class对象,也就是说,当程序中使用任何类时,系统都会为之建立一个java.lang.Class对象.(几乎所有的类都是java.lang.Class的实例); 所以JVM最先初始化的总是java.long.Object类. 在java中,一个类用

《Java疯狂讲义》中关联、组合和聚合的谬误

本文參考例如以下资料(建议阅读): a). difference-aggregation-acquaintance-and-composition-as-used-by-gang-of-four b). AssociationVsAggregationVsComposition c). Design Patterns Elements of Reusable Object-Oriented Software d). Java疯狂讲义(第三版) 1. 问题的由来 我看到的是这本书的第三版,在2.2

《小强软件测试疯狂讲义-性能及自动化》一书正式发布

本书即日起将在各大网上书店陆续发布,欢迎大家选购!可在china-pub.com,京东,当当,天猫等网店购买,搜索"小强软件测试疯狂讲义"关键字即可查找并购买了哦!   出版社官方天猫购买地址(推荐):https://detail.tmall.com/item.htm?id=547310727717 当当购买地址:http://product.dangdang.com/24239858.html 京东购买地址:https://item.jd.com/12161074.html chin