Objective-C基础教程:面向对象与字符串

5星 · 超过95%的资源 需积分: 10 5 下载量 148 浏览量 更新于2024-09-15 收藏 216KB PDF 举报
"Objective-C快速入门教程最新版" Objective-C是一门强大的面向对象编程语言,它建立在标准的ANSI C之上,并引入了Smalltalk的语法和设计元素。这使得熟悉C语言的开发者能够更容易地过渡到面向对象编程。Objective-C的源代码文件通常分为三类:`.h`头文件用于声明类接口,`.m`文件用于实现类的方法,而`.mm`文件则用于混编C++代码。 Objective-C中的字符串处理主要依赖于`NSString`类,这是一个不可变的字符串类,支持Unicode字符集和多种便捷的操作方法。创建`NSString`对象有两种方式,一种是直接用`@`符号加上双引号创建常量字符串,另一种是使用`stringWithFormat:`方法动态生成字符串。 类(Class)在Objective-C中扮演着核心角色。定义一个类时,通常会在`.h`文件中声明接口,包括类名、属性(properties)和方法(methods),而在`.m`文件中实现具体的功能。例如,以下是一个简单类接口的声明: ```objc // HelloWorld.h #import <Foundation/Foundation.h> @interface HelloWorld : NSObject @property (nonatomic, strong) NSString *userName; - (instancetype)initWithUserName:(NSString *)name; @end ``` 实现部分通常在`.m`文件中,如: ```objc // HelloWorld.m #import "HelloWorld.h" @implementation HelloWorld - (instancetype)initWithUserName:(NSString *)name { self = [super init]; if (self) { _userName = name; } return self; } @end ``` 在Objective-C中,类的实例有两种类型:强类型(Strong typing)和弱类型(Weak typing)。强类型在定义实例时明确指定了类名,如`MYHelloWorld* myHelloWorld1;`,而弱类型只使用`id`关键字,不指定具体的类,如`id myHelloWorld2;`。弱类型可以指向任何对象,但在使用时需要进行类型转换或使用`isKindOfClass:`等方法来确定对象的实际类型。 Objective-C以其独特的面向对象特性、与C语言的兼容性以及强大的字符串处理能力,成为了开发Apple平台应用程序的重要工具。通过熟悉这些基础知识,开发者可以快速入门Objective-C编程,并逐步深入到更复杂的iOS和macOS应用开发。
2017-11-28 上传
中文名: Objective-C基础教程 作者: Mark Dalrymple Scott Knaster译者: 高朝勤 杨越 刘霞图书 分类: 软件 资源格式: PDF 版本: 扫描版 出版社: 人民邮电出版社 书号: ISBN: 9787115208774 发行时间: 2009年08月 地区: 大陆 语言: 简体中文 简介: 内容简介 Objective-C是扩展C的面向对象编程语言,也是iPhone开发用到的主要语言。本书结合理论知识与示例程序,全面而系统地讲述Objective-C编程的相关内容,包括Objective-C在C的基础上引入的特性和Cocoa工具包的功能及其中的框架,以及继承、复合、源文件组织等众多重要的面向对象编程技术。附录中还介绍了如何从其他语言过渡到Objective-C。   本书适合各类开发人员阅读。 内容截图 目录: 第1章 启程.1 1.1 预备知识1 1.2 历史背景1 1.3 内容简介2 1.4 小结3 第2章 对C的扩展4 2.1 最简单的Objective-C程序4 2.2 解构HelloObjective-C程序7 2.2.1 #import7 2.2.2 NSLog()和@"字符串"8 2.3 布尔类型10 2.3.1 BOOL强大的实用功能11 2.3.2 比较13 2.4 小结14 第3章 面向对象编程基础知识15 3.1 间接15 3.1.1 变量与间接16 3.1.2 使用文件名的间接18 3.2 在面向对象的编程中使用间接24 3.2.1 过程式编程24 3.2.2 实现面向对象编程29 3.3 学习有关的术语33 3.4 Objective-C中的OOP34 3.4.1 @interface部分34 3.4.2 @implementation部分38 3.4.3 实例化对象40 3.4.4 扩展Shapes-Object41 3.5 小结43 第4章 继承45 4.1 为何使用继承45 4.2 继承语法48 4.3 继承的工作机制51 4.3.1 方法调度51 4.3.2 实例变量53 4.4 重写方法55 4.5 小结57 第5章 复合58 5.1 什么是复合58 5.1.1 Car程序58 5.1.2 自定义NSLog()59 5.2 存取方法62 5.2.1 设置发动机的属性64 5.2.2 设置轮胎的属性64 5.2.3 跟踪汽车的变化66 5.3 扩展CarParts程序67 5.4 复合还是继承68 5.5 小结69 第6章 源文件组织70 6.1 拆分接口和实现部分70 6.2 拆分Car程序73 6.3 使用跨文件依赖关系75 6.3.1 重新编译须知75 6.3.2 让汽车开动77 6.3.3 导入和继承79 6.4 小结80 第7章 深入了解Xcode82