IOS--OC--Lesson 类 和对象

来源:互联网 发布:长虹网络电视刷机包 编辑:程序博客网 时间:2024/05/29 12:08

一 OC
1.OC 与 C 的区别:
1⃣OC 是 C 语言的超集, OC 是在 C 语言的技术上结合smalltalk的优点 ,开发出来语言, OC 兼容所有的 C 语言的语法.
2⃣OC 扩展了 面向对象的思想
3⃣.运行时特性
4⃣.有丰富的类库
2. 面对象编程

OOP(Objective Oriented Programming)
  1. 带*都是对象类型用 NSString
    浮点的就是 CGF 整型数字就是 NSInteger
    4.OC的三大特性:封装,继承,多态
    核心:类和对象
    // 类:具有相同特征和行为的事物的抽象
    // 对象:类的具体化,实实在在的东西,能摸得到看得到事物
    // 类和对象的关系:类是对象的类型,对象是类的实例;

4.类在 OC 中得实现:
1⃣类是创建出来的(相当于一种新的数据类型);
通过cocoa touch class 模板创建,会生产一对.h .m 文件;
2⃣.h 文件中写的是类的声明,包括类的特征和行为的声明(方法的声明);
3⃣.m 文件中写的是行为的实现(C 语言中叫函数,在 OC 里叫方法的实现);
4⃣ 行为的声明
//-(减号)是 OC 中对象方法的标志;
//+(加号)是 OC 中类方法的标志;
二 创建
1. 开辟内存空间
2.初始化: 用 alloc 申请内存 []中括号的作用是调用方法 调用的 alloc 的方法
PS: 创建奥迪对象 P
Audi *p = [[Audi alloc]init];
// 是实例变量赋值

     p->_type = @"A6";     p->_price = 300000;     p->_color = @"black";     NSLog(@"型号:%@ 价格:%.2f 颜色:%@", p->_type,p->_price,p->_color);     [p run];     打印的结果就不写了//     一个类可以创造很多对象     Audi *au=[[Audi alloc]init];    au ->_type = @"A6";    au ->_price = 300000;    au ->_color = @"black";    NSLog(@"型号:%@ 价格:%.2f 颜色:%@", au->_type,au->_price,au->_color);    [au stop];    Audi *au2= [[Audi alloc]init];     NSLog(@"型号:%@ 价格:%.2f 颜色:%@", au2->_type,au2->_price,au2->_color);

三 .H 文件
1..h 文件中写的是类的声明,包括类的特征和行为的声明(方法的声明);

ps: {//    特征   @public    NSString *_type;    CGFloat _price;    NSString *_color ;}//行为- (void) call;- (void) message;- (void) playgame;注意: //一对. h .m 文件中可以放多个类

//.h 只能放类的声明 .m 文件中可以同时放类的声明和实现
2. 调用自己 用 -(id)init{}

PS: -(id)init{    _type = @"奥迪 A10";    _price = 500000;    _color = @"金色";   return self;// 谁调用 就返回他自己}

3.有参数的

PS - (void)say:(NSString *)something{字符串类型用%@  占位符    NSLog(@"%@",something);}
  1. NSLog 与printf 的区别
    1⃣NSLog打印时自动换行 不加\ n ;
    2⃣NSLog 能打印 OC 中得对象 printf不行;
0 0
原创粉丝点击