OC简介

Object-C简介

OC简介

       Objective-C是一种面向对象的计算机语言,Brad J Cox 1980s 设计了Objective-C,该语言是基于SmallTalk-801988 NeXT 发布了Objective-C,它的开发环境和类库叫“NEXTSTEP”, 1994NeXTSun发布了标准的NEXTSTEP系统, 名“OPENSTEP”,软件自由基金会OPENSTEP版本叫GNUStep

       1996 苹果公司开始支持NeXT,NEXTSTEP/OPENSTEP用于 Mac OS X操作系统开发,它的版本和开发环境叫Cocoa,使用 Objective-C作为基础语言,开发工具XcodeInterface Builder 2007 苹果公司推出Objective-C 2.0,Objective-CMac OS X iOS开发的基础语言。

       OC不是一门全新的语言

       C语言的基础上增加了一层最小的面向对象语法

       OC完全兼容C语言语言

       可以在OC代码中混入C语言代码,甚至是C++代码

       可以使用OC开发Mac OS X平台和iOS平台的应用程序

OC简介

如何由C过度到OC的学习

       1.数据类型(类型、运算符、表达式)

       Char int float double

       Oc ?

       2.定义声明变量(变量的定义、初始化、读写)

       Int number = 10;

       Int *p = &number;

       Oc ?

       3.流程控制

       While dowhile for

       Oc?

       4.函数(声明、实现<</span>定义>、方法名参数和返回值形式<</span>函数的三要素>、与方法<</span>类方法、实例方法>的区别)

       没有返回值

       有返回值

       有参数

       有多个参数的

       Void function();

       Int function();

       Void function(int number);

       Void function(int v1, int v2);

       Oc ?

 

Objective-C 关键字

大部分关键字都以@开头

 

@interface@implementation@end

@public@protected@private@selector

@try@catch@throw@finally 

@protocol@optional@required@class

@property@synthesize@dynamic

BOOL Class SEL YES NO id self  super nil atomic nonatomic retain assign copy block …

OC中增加的数据类型

OC简介

       C语言中的数据类型

       1.定义变量

       Int number = 10;

       BOOL b = YES;

       NSObject *b = ?

       2.作为函数的参数

       Void function(id d);

       3.作为函数的返回值

       NSObject * function();

 

 

OC中的流程控制语句

       C语言中使用的流程控制语句OC中都可以应用

       增强for循环,用于快速迭代数组或者集合

OC简介

 

 

OC中的类

       类是用来描述对象的

       类就是一系列方法与属性的集合

OC简介

OC中的方法

       对象方法,使用对象调用的方法

       类方法,使用类名调用的方法

 

对象方法

- (id)initWithString: (NSString * )name;

类方法

+ (MyClass *)createMyClassWithString: (NSString *)name;

 

 

 

OC中增加的面相对象语法特性

       封装性

       继承性

       多态性

欢迎进入面向对象的世界

OC简介

属性生成器

       @property

       @synthesize

//声明属性

@property (nonatomic,strong)NSString * name;

 

//合成属性

@synthesize name = _name;

手动内存管理

       内存管理原则

       release方法

       retain 方法

       autorelease 方法

       dealloc 方法

 

ARC内存管理机制

       强指针

       弱指针

OC简介

分类

       分类与继承

       使用分类扩展类,无需子类化

@interface NSString (MyNSString)

 

-(NSString *) encryptWithMD5;

 

@end

协议

       使用协议声明方法

       协议类似于C#java中的接口

@protocol MyProtocol

 

(void)myProtocolMethod;

 

@end

Fundation框架

       创建和管理集合,如数组和字典

       访问存储在应用中的图像和其他资源

       创建和管理字符串

       发布和观察通知

       创建日期和时间对象

       操控URL

       异步执行代码

 

OC语言学习阶段目标

语法学习

建立面向对象思维能力

建立基本项目需求分析能力

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值