【OC基础】- 简介

源于:http://www.cnblogs.com/wendingding/p/3704518.html

源博文写的超级棒,向大神学习,此处只是部分摘要,为学习笔记。

一、简介

OC语言在C语言的基础上,增加了一层最小的面向对象语法,完全兼容C语言,在OC代码中,可以混用C,甚至是C++代码。

可以使用OC开发MAC OSX平台和IOS平台的应用程序。

拓展名:C语言-.c  OC语言.-m  兼容C++.-mm

二、开发过程

#import预处理指令有两个作用:

  1. 与#include一样,拷贝文件内容 。

  2. 可以自动防止文件的内容被重复拷贝。

程序编译连接过程:

源文件(.m)---(编译)---->目标文件(.0)-----(链接)---->可执行文件(.out)

运行过程如下:

(1)编写OC源文件  .m .c

(2)编译文件  cc -c xx.m  xxx.c

(3)链接  cc xx.o xxx.o  -framework Foundation

(4)运行 ./a.out

三、面向对象

OC语言是面向对象的,c语言是面向过程的,

面向对象和面向过程只是解决问题的两种思考方式,

面向过程关注的是解决问题涉及的步骤,

面向对象关注的是设计能够实现解决问题所需功能的类。

术语:OO面向对象、OOP面向对象编程

四、类

1. 类概述

  类的设计只关注三个东西:类名、属性和方法。

  在OC中,对象对方法的调用称为消息机制,即向既定的对象发送了什么消息。

2. 简单内存分析

  类创建对象,每个对象在内存中都占据一定的存储空间,每个对象都有一份属于自己的单独的成员变量,

    所有的对象公用类的成员方法,方法在整个内存中只有一份,

    类本身在内存中占据一份存储空间,类的方法存储于此。

  每个对象内部都默认有一个isa指针指向这个对象所使用的类。

  [p eat];表示给p所指向的对象发送一条eat消息,调用对象的eat方法,此时对象会顺着内部的isa指针找到存储于类中的方法,执行。

  isa是对象中的隐藏指针,指向创建这个对象的类。

时间: 2024-10-25 22:57:51

【OC基础】- 简介的相关文章

OC基础--简介

OC简介: 1986年,BradCox(布莱德·考克斯)在第一个纯面向对象语言Smalltalk基础上写成了Objective-C语言. 1985年,被赶出苹果公司的Steve Jobs成立了NeXT公司,致力于开发强大且经济的工作 站.NeXT选择Unix作为其操作系统 1988年Steve Jobs获得了Objective-C的使用版权,使用Objective-C来编写NeXTSTEP操作系统,Objective-C使得设计NeXTSTEP操作系统更加容易 1994,NeXT与Sun共同制定

OC基础-面向对象编程简介

OC语言特点: C语言的超集,可与C,C+混编,具有良好的兼容性. 具备完善的面向对象特征. 包含一个运行时系统. 类库丰富. 面向对象编程(OOP:Object Oriented Programming)简介: 常用语言:java,C#,C++ 特征:对象,类,封装,继承,多态 面向过程与面向对象区别: 前者以过程为中心实现函数,依次调用,以过程为中心. 分解问题组成的对象,协调对象间相互通信.以对象为中心. OC中类的定义: 使用对象完成程序. 先定义类,在创建对象,然后使用对象. 接口部分

iOS开发OC基础:OC属性的一些概念和基本使用

一.属性简介 //属性是OC2.0之后新出的一种语法,能让我们快速的生成setter以及getter方法,大大简化代码 二.如何定义一个属性 //@property 属性关键字,用来定义属性 //NSString * 属性的类型 //name 属性的名字. //@property 只是生成的setter以及getter方法的声明.@property NSString *name; 三.属性的使用注意事项//如果在.m文件中我们自己实现了setter以及getter方法,则编译器就不会再帮我们生成

OC基础(21)

Foundation框架介绍 NSString基本概念 字符串读写 字符串比较 字符串搜索 字符串截取 字符串替换 字符串与路径 字符串与基本数据类型转换 *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } a { color: #4183C4; } a.absent { color: #cc0000; } a.anchor { display: bloc

OC基础笔记目录

OC基础(1) Objective-C简介 OC和C对比 第一个OC程序 面向对象思想 OC基础(2) 类与对象 类的设计 第一个OC类 对象方法的声明和实现 类方法的声明和实现 OC基础(3) 对象的存储细节 函数与方法对比 常见错误 OC基础(4) NSString 类介绍及用法 结构体成员变量 对象和方法之间的关系 对象作为方法的参数连续传递 OC基础(5) #pragma mark指令 OC多文件开发介绍 匿名对象

oc基础 不可变字符串的创建和使用

oc基础  不可变字符串的创建和使用 简介:下面都是字符串基本用法. 1.字符串的创建 //创建oc常量字符串 NSString *str=@"hello world!"; NSLog(@"%@",str); //用c语言的字符串来创建oc的字符串 char *ch="hello world C"; NSString *str2=[[NSString alloc] initWithUTF8String:ch]; NSLog(@"%@&q

OC基础01

搜索 "==>" 寻找标记 OC基础总结: Objective-C具有相当多的动态特征,如: " 动态类型 , 动态绑定 , 动态加载" ==> copy mutableCopy 浅复制: 在复制操作中,对于被复制的对象的每一层复制都是指针复制. 深复制: 在复制操作中,对于被复制的对象至少有一层是对象复制 完全复制: 在复制操作中,对于被复制的对象的每一层都是对象复制. 一般来讲: 浅复制复制引用对象的指针 深复制 复制引用对象的内容 retain &

四.OC基础--1.文档安装和方法重载,2.self和super&static,3.继承和派生,4.实例变量修饰符 ,5.私有变量&私有方法,6.description方法

四.OC基础--1.文档安装和方法重载, 1. 在线安装 xcode-> 系统偏好设置->DownLoads->Doucument->下载 2. 离线安装 百度xcode文档 3. 方法重载: 是指在一个类中定义多个同名的方法 在OC中没有重载 2.self和super&static, self和super: 1. self理解: 谁调用当前方法, self就代表谁. 比如: 在对象方法中,self代表的是对象, 因为只有对象才可以调用对象方法 在类方法中, self代表的

OC基础 可变字典与不可变字典的使用

OC基础 可变字典与不可变字典的使用 1.不可变字典 1.1创建不可变字典 //创建字典 //注意: //1,元素个数是偶数 //2,每两个元素是一个键值对 //3,值在前,键在后 NSDictionary *dic = [[NSDictionary alloc] initWithObjectsAndKeys:@"huang",@"name",@"30",@"age", nil]; NSLog(@"%@",

OC基础(23)

NSArray基本概念 NSArray 遍历 NSArray排序 NSArray文件读写 NSArray 与字符串 *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } a { color: #4183C4; } a.absent { color: #cc0000; } a.anchor { display: block; padding-left: 30p