OC 入门
OC 入门
关键词正确写法:
- Xcode 错误的写法: xcode
- iPhone 错误的写法:IPhone
- iOS 错误的写法:IOS
- OC 全称: Objective-C 错误的写法:Object-c
文件后缀:
- .h 头文件
- .c C语言
- .m C语言,OC语言
- .cpp C++
- .mm C++,OC语言
<#import关键字>
#import 和 #include 的异同
相同点:
- <都是预编译指令
- <将其他文件导入到#import该行的功能
- <#include<> #import<> 都是导入系统文件
- <#include"" #import"" 都是导入用户自定义的文件
不同点:
- <#import是#include的升级版,具有防止相同文件多次导入的功能以后我们是导入的指令符用#import
Foundation框架介绍:
Foundation框架,OC中最重要的一个框架,Foundation命名空间以NS开头
框架:封装了一些常用的类,函数,方法,结构体,变量等等。
自动释放池:
@autoreleasepool。自动释放池,帮助程序员管理内存空间,代码写下括号之内。
iOS4.0之前的写法 NSAutoreleasepool * pool = [NSAutoreleasepool new]; [pool drain];
NSLog的用法:
NSLog是Foundation框架提供的日志输出函数,可以输出日期,时间,对应的应用程序。
NSLog具有自动换行功能,末尾加\n无效。
@"" 是一个NSString对象的字面量变现。
字面量:@(),@[],@{}
printf的占位符在我们NSLog中一样使用
%i 修饰整形
%g 修饰浮点型,末尾0省略
%@ 修饰对象
面向对象编程:
面向过程:程序员相当于一个执行者,C语言。
面向对象:程序员相当于一个指挥者,OC,Java,C++。
打开电脑
打开浏览器
听歌
电脑 - 打开电脑
电脑 - 打开浏览器
播放器 - 听歌
类和对象:
对象是对客观事物的抽象,类是对对象的抽象。类是一种抽象的数据类型,其定义为:
它们的关系是,对象是类的实例,类是对象的模板。
类:图纸 对象:车
C语言用结构体封装数据的。
OC用的是类。属性就是成员变量,行为就是方法。
类:描述事物的名称,属性和行为。
名称:老师
属性:男,人
行为:讲课
名称:老师
行为:指导
名称:学生
行为:做题
Student
属性:姓名,学号
行为:学习,翘课
OC中是如何实现一个类的
声明 和 实现。
类的声明:以@interface开头,以@end。
类的实现:以@implementation开头,以@end。
NSObject基类
NSObject的作用使我们的Person具有创建对象的能力
在大括号里声明成员变量
常见错误:
unrecognized selector sent to instance 对象没有实现该方法
成员变量命名规范
成员变量以下划线开头,驼峰命名
成员方法:
无参数:方法类型符 (返回值类型) 方法名,被(-)修饰的方法,只能被对象调用
:的作用:
:是方法名的一部分
一个:对应一个形参
:前面的文字是描述参数的
描述参数可以省略,但是坚决不建议省略
不同类定义相同方法,是互不影响的。
举例:[Person new]对应哪些操作
1.为Person这个对象在堆内存中分配空间,malloc
2.初始化成员变量
3.返回一个指向该对象的指针
OC 入门的更多相关文章
- Swift 从OC入门
前言:断断续续学了蛮多天的Swift,感触还是蛮多的~~ 1.OC是以C语言为基础的语言,学习之前有C语言的基础,所以对于 `*` 这些指针还是比较容易理解的.问过其他程序员,对OC里面的 `*` 指 ...
- OC入门笔记
1OC概述OC主要负责UI界面:C语言和C++可以用于图形处理.OC是一门面向对象的语言.C语言是面向过程的.比C++简单很多以C语言为基础,完全兼容C语言.OC语言中的所有事物都是对象,都有isa指 ...
- ios入门OC_UI晋级学什么?
1. OC 语法初步, 你可能学到面向对象最近本的概念, 并且可以大致的建立几个自以为是的类,但这仅仅是开始. 你知道为什么面向对象要有3大特性么.知道他们是用到什么设计模式的么 2. 你可能学到了N ...
- Object C学习初步
最近乘着项目不太紧张的时候,赶紧给自己冲了一下电.其实我自己最熟悉的平台应该是.net,所以当初上手windows phone的话是很快,我记得当初是一边跟着项目进展,一边自己开始学习前台的XAML语 ...
- Objective-C 学习 (一):Objective-C 概述
1. OC在C的基础上新增了一些面向对象的语法,将C的复杂的.繁琐的语法封装的更为简单.且OC完全兼容C语言. 2. OC程序的源文件的后缀名是.m, m 代表message,代表OC中最重要的一个机 ...
- 一.OC基础之:1,OC语言的前世今生 ,2,OC语言入门,3,OC语言与C的差异,4,面向对象,5,类和对象的抽象关系,6,类的代码创建,7,类的成员组成及访问
1,OC语言的前世今生 , 一, 在20世纪80年代早期,布莱德.麦克(Brad Cox)设计了OC语言,它在C语言的基础上增加了一层,这意味着对C进行了扩展,从而创造出一门新的程序设计语言,支持对象 ...
- Swift语法基础入门一(适合有C, OC开发人员)
Swift开发体验 /*: 创建对象 * OC: alloc initWithXXX 方法 * Swift: (xxx:) */ /*: 调用方法 * OC: [UIColor redColor]; ...
- 【IOS】IOS高速入门之OC语法
Objective-C 是 C 语言的超集 您还能够訪问标准 C 库例程,比如在stdlib.h和stdio.h中声明的那些例程. Objective-C 还是一种很动态的程序设计语言,并且这样的动态 ...
- 学习WCF入门的第一个实例
一.概述 WCF说白了就是一个基于终结点的通信手段!就是Service端提供一定的功能实现,然后暴露出一个或多个终结点,Client端调用Service端的功能(可以理解为调用一个函数),那么Clie ...
随机推荐
- 二、Sink例程
1. Sink例程 CSR粗略的将audio蓝牙设备分为了两大类:sink和source设备,并分别提供了两类设备的例程,配置工具,说明文档.如对于sink设备,提供了sink app例程,SinkU ...
- 浏览器桌面通知Notification探究
首先说明,这篇博文不是科普讲解的,而是立flag研究的,是关于浏览器消息自动推送,就是下面这个玩意: 最近常常在浏览器看到这样的消息推送,还有QQ.com的推送,现在我对这个不了解,不知道叫消息自动推 ...
- orleans/Documentation
福利 奥尔良的主要好处是︰开发人员工作效率,甚至为非专家程序员;和默认的透明可伸缩性与程序员没有特别努力.我们扩大每个下面这些好处. 开发人员的生产力 奥尔良的编程模型通过提供以下关键的抽象. 担保和 ...
- 走进异步世界:EnyimMemcached异步化改造引起的内存泄漏
6月30日我们发布了异步化改造后的博客程序之后,出现了高内存.高CPU.高线程数的不理想情况. 经过一周的追查,终于水落日出——引起不理想情况的根源是我们修改过的EnyimMemcached代码存在内 ...
- C# redis使用之ServiceStack
需要注意的是:ServiceStack.Redis 中GetClient()方法,只能拿到Master redis中获取连接,而拿不到slave 的readonly连接.这样 slave起到了冗余备份 ...
- MyEclipse10启动Tomcat8出错
问题一: java.lang.UnsupportedClassVersionError: org/apache/catalina/startup/Bootstrap : (Unsupported ma ...
- all requires API level 3 (current min is 1)问题的解决
几次出现了all requires API level 3 (current min is 1)的错误,后来发现解决的方法是右键单击项目文件夹,选择Android Tools->Clear Li ...
- 简单可用好实现的 HA 高可用设计
本文为作者原创,如需转载请注明出处. 1. 实现的功能 一主多备,自动选主 启动记录可查询 2. 前置需求 一台数据库用以记录,如 MySQL.Redis.MongoDB 等.关键是设计中的思想,用啥 ...
- B树详解
B树 具体讲解之前,有一点,再次强调下:B-树,即为B树.因为B树的原英文名称为B-tree,而国内很多人喜欢把B-tree译作B-树,其实,这是个非常不好的直译,很容易让人产生误解.如人们可能会以为 ...
- 使用 iosOverlay.js 创建 iOS 风格的提示和通知
iosOverlay.js 用于在 Web 项目中实现 iOS 风格的通知和提示效果.为了防止图标加载的时候闪烁,你需要预加载的图像资源.不兼容 CSS 动画的浏览器需要 jQuery 支持.浏览器兼 ...