黑马程序员_OC初见识和语法基础

(一)OC概述
OC全称Objective-C,是一种面向对象的高级语言(而C语言是面向过程的,OC在C的基础上增加了一层面向对象的思想)。OC是苹果的OSX和IOS操作系统及其相关API,Cocoa和CocoaTouch(前者为针对OS X系统的工具包,后者为针对IOS系统的工具包)的主要编程语言。Objective-C可以在GCC以及Clang运作的系统上编写和编译。相比于其他编程语言,OC显得更外的精简和小巧。在安装了x-code后便可以开始魅力的OC编程之路。
(二)OC语法
OC完全兼容C语言,并且可以和C,C++语言同时使用。
(1)关键字:为了防止OC关键字和C语言关键字混淆,基本所有的OC关键字都以@开头,例如@interface,@implementation等,但也有少部分不以@开头,例如self,super等。
(2)字符串:OC字符串全部已@开头,并且使用频率远大于C语言字符串。开发中常见的就是@""开头的字符串。在C语言中,字符串输出是用printf,OC语言中使用了一种更先进的输出方法,叫做NSLog,专门输出@ OC类型的字符串。
(3)OC循环,数据类型等用法和C是互通的。
一个新类型:BOOL:
C语言中拥有布尔数据类(Boolean)类型,用来存储真假。OC中BOOL与其类似,具有YES,NO两个值。BOOL的本质是char,它的定义是typedef signed char BOOL(把signed char定义成了BOOL类型),所BOOL b = 1,0,YES,NO都是正确的。它不仅可以当做返回值,也可以当做形参。BOOL类型的输出用%d。
(4)开发过程:
1.编写代码(C语言源文件是.c OC语言源文件是.m,剩下过程一模一样)
2.编译(cc -c),检测语法是否正确,如果正确,把代码翻译成0跟1,生成.o文件
3.链接(cc .o):链接是把项目中所有相关的.o目标文件和C语言函数库合并在一起,生成一个可执行文件。在初学OC中,只用到了一个框架,Foundation.所以在链接过程中要链接框架-frameworkFoundation。此代码在终端中需要手动输入,在运用了X-code的高级功能后,系统会自动添加此代码)。
(5)OC程序:
1.OC程序和C语言程序一样,入口是main函数。
2.OC完全兼容C语言代码。下面有一个最基本的OC语句,从中我们可以引申出很多新知识,我们依次了解。


int main()
{
NSLog(@"好好做笔记");
return 0;
}



(6)框架:
如上代码,一开头有一个#import <Foundation/Foundation.h>语句。这个语句告诉编译器查找Foundation框架中的Foundation头文件。其实,框架就是一种把头文件,库,图片,声音等内容聚集在一个独立单元中的集合。Foundation框架处理的是用户界面之下的那些层的特性,比如数据结构和通信机制等。目前黑马视频中使用的框架均为Foundation框架。
(7)#import介绍:
1.#import是由xcode的编译器提供的。xcode在编译OC,C和C++时都可以使用它。
2.#import和#include一样,都可以拷贝文件内容,但是#include只能使用在C语言,并且可以重复拷贝。而#import避免了文件内容的重复拷贝。功能更为强大。
3.只要使用#import <Foundation/Foundation.h>语句来包含主头文件,就能获得整个集合(每一个框架同名的.h文件会包含这个框架内所有文件的头文件)。
(8)NSLog:
1.在调用了Foundation框架的主头文件后,就可以使用NSLog了,相比于printf,NSLog拥有自动换行等诸多好处。NS开头的函数类型往往都是OC语言规范,在OC中应使用NSLog代替print。
2.写法:NSLog(@"要输出的内容");
(9)NSString:
NSString是OC中的字符串,相比于C语言中的数组或char*name = "jack";的存储方式,NSString拥有可以方便计算字符串长度等诸多好处,所以在OC中使用NSString代替C语言字符串。
NSString被称作字符串处理类,@"dasdas"这种规格的写法,在OC中也算作是一个对象。字符串对象属于字符串的NSString类,并且NSString类继承NSObject类。
(10)OC中的多文件开发:
OC中多文件开发与C类似,源代码文件为.m文件,先把多个.m文件编译成.o(cc -c .m .m),再把多个.o文件同时链接,生成可执行程序./a.out(cc .o .o -framework Foundation),然后执行./a.out。但是OC引进了类的思想,不同的类应放在不同的文件,Xcode的编译方法是所有.m文件同时编译链接。所以定义一个类一般要分为两个文件,一个头文件.h写成员变量和方法声明。一个.m文件写方法的实现。如果想要使用某个类,只需#improt这个类的头文件就可以了。在运用了Xcode的高级功能后,每次创建类,Xcode会自动帮我们分开生成.h和.m文件,方便程序员编写程序。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值