黑马程序员——OC基础—-----一个简单OC程序的分析
来源:互联网 发布:按键精灵节奏大师源码 编辑:程序博客网 时间:2024/05/16 07:24
-----------Java培训、Android培训、IOS培训、.Net培训、期待与您交流!------------
刚开始学习oc,感觉跟C有很大的不一样,挺别扭的。
1、oc类的导入用的是#import关键字。
2、oc的基类是NSObject。类对象的创建要显示继承自NSObject。
3、oc的关键字都是以@开头,字符串也是以@开头。如@public表示成员变量的访问级别是公共的。
4、oc类的成员和方法在@interface和@end中声明,方法在@implementation和@end中实现。
5、类的对象方法以 - 开头,类方法以 + 开头。类型需要用括号括住。如- (void)test;
6、要执行某些行为或者方法时,需要用中括号括住。如
创建OC对象的两种方式:
a:[Student new] 指创建了一个新的Student对象
b:[[Student alloc] init]
[stu study]指执行对象stu的study方法
7、对象成员的访问用->符号表示,如p->wheels表示访问p对象的wheels成员。
8.OC有category、delegate、protocol等其他语言没有功能。
// 因为使用了NSObject//导入框架#import <Foundation/Foundation.h>// 完整地写一个函数:函数的声明和定义(实现)// 完整地写一个类:类的声明和实现// 1.类的声明// 声明对象的属性、行为// : NSObject 目的是:让Car这个类具备创建对象的能力@interface Car : NSObject{// 用来声明对象属性(实例变量\成员变量,默认会初始化为0) // @public可以让外部的指针间接访问对象内部的成员变量 @public int wheels; // 轮胎个数 int speed; // 时速(xxkm/h)}// 方法(行为):方法名、参数、返回值(声明、实现)// 只要是OC对象的方法,必须以减号 - 开头// OC方法中任何数据类型都必须用小括号()扩住// OC方法中的小括号():括住数据类型- (void)run;@end// 2.类的实现// 用来实现@inteface中声明的方法@implementation Car// 方法的实现(说清楚方法里面有什么代码)- (void)run //对象方法{ NSLog(@"车子跑起来了");}+ (void)fly //类方法{ NSLog(@"车子飞起来了");}@endint main(){ // 在OC中,想执行一些行为,就写上一个中括号[行为执行者 行为名称] // 利用类来创建对象 // 执行了Car这个类的new行为来创建新对象 // 定义了一个指针变量p,p将来指向的是Car类型的对象 // [Car new]每次都会创建出一个新对象,并且会返回新对象本身(新对象的地址) Car *p = [Car new]; //创建Car对象 Car *p2 = [Car new]; //创建Car对象 p2->wheels = 5; //对p2对象的wheels属性进行赋值 p2->speed = 300; //对p2对象的speed属性进行赋值 [p2 run]; //调用run方法 // 给p所指向对象的wheels属性赋值 p->wheels = 4; p->speed = 250; // 给p所指向对象发送一条run消息 [p run]; NSLog(@"车子有%d个轮子,时速位:%dkm/h", p->wheels, p2->speed); return 0;}
0 0
- 黑马程序员——OC基础—-----一个简单OC程序的分析
- 黑马程序员——OC基础---简单的OC程序
- 黑马程序员——IOS基础---Objective-C第一节课---最简单的OC程序
- 黑马程序员——[OC]01-OC的初步认识(简单程序)
- 黑马程序员——OC基础---OC特有语法
- 黑马程序员——OC基础
- 黑马程序员——OC基础语法
- 黑马程序员——oc基础1
- 黑马程序员——OC基础语法
- 黑马程序员——oc基础语法
- 黑马程序员——OC基础---继承
- 黑马程序员——OC基础---协议
- 黑马程序员—OC基础--枚举数据类型
- 黑马程序员—OC基础--初探“多态”
- 黑马程序员—OC基础--初探 “KVO”
- 黑马程序员—OC基础--初探 “KVC”
- 黑马程序员——OC基础学习(一)---第一个OC语言程序和面向对象编程的基本认识
- 01.黑马程序员-简单的OC程序
- 1008. Elevator (20)
- 矩阵相乘的优化
- GSM压缩/ 解压实现
- Linux 开机启动websphere 服务
- 林达华推荐的几本数学书
- 黑马程序员——OC基础—-----一个简单OC程序的分析
- 如何在多台机器上共享IOS证书
- ERROR:C++ 字符指针引起的段错误
- 2015.03.04学习笔记
- HDU 2048--神、上帝以及老天爷【错排】
- spring cas 配置小知识
- GStreamer 1.0 运行时环境变量设置
- Qt 5.3.2在周立功M3352开发板的移植记录
- canvas之刮刮卡效果