Objective-C与Swift编程-中山大学数据科学与计算机学院.doc

Objective-C与Swift编程-中山大学数据科学与计算机学院.doc

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Objective-C与Swift编程-中山大学数据科学与计算机学院.doc

PAGE  PAGE 43 Objective-C与Swift编程 Objective-C程序设计 Objective-C简介 1.1历史 Brad J.Cox在20世纪80年代早期设计了Objective-C语言,它以一种叫做SmallTalk-80的语言为基础。Objective-C在C语言的基础上又加了一层,这意味着对C进行了扩展,从而创造出一门新的程序设计语言,支持对象的创建和操作。 1988年,NeXT计算机公司获得了Objective-C语言的授权,并发展了Objective-C的语言库和一个开发环境,即NEXTSTEP。1992年,自由软件基金会的GNU开发环境增加了对Objective-C的支持。所有Free Software Foundation(FSF)产品的版权归FSF所有。它以GNU通用公共许可证来发布产品。 1994年,NeXT计算机公司和Sun公司联合发布了一个针对NEXTSTEP系统的标准规范,名为OPENSTEP。OPENSTEP在自由软件基金会的实现名称为GNUStep。有一个Linux版本,它包括Linux内核和GNUStep开发环境,这个Linux发行版被十分贴切地命名为LinuxSTEP。 1996年12月20日,苹果公司宣布收购NeXT软件公司,NEXTSTEP/OPENSTEP环境将成为苹果操作系统下一个主要发行版本OS X的基础。这个开发环境的版本被苹果公司称为Cocoa。它内置了对Objective-C语言的支持,并结合了Project Builder(后继版本为Xcode)和Interface Builder等开发工具,苹果公司为Mac OS X上的应用程序开发创建了一个功能强大的开发环境。 2007年,苹果公司发布了Objective-C语言的升级版,并称之为Objective-C 2.0。 1.2第一个Objective-C程序 Objective-C是非常实用的语言。它是一个用C写成很小的运行库,令应用程序的尺寸增加很小,和大部分OO系统使用极大的VM执行时间会取代了整个系统的运作相反。Objective-C写成的程序通常不会比其原始码大很多。Objective-C完全兼容标准C语言,而在此基础上增加了面向对象编程语言的特性以及Smalltalk消息机制。 开发工具:Xcode 下载地址: 实例代码: #import Foundation/Foundation.h int main(int argc,const char * argv[]) { @autoreleasepool{ NSLog(@Hello World!); } return 0; } Objective-C源文件使用.m作为文件的扩展名。表1.1列出了常见的文件扩展名。 表1.1 代码解释: (1)注释://或/* */ (2)将文件信息导入或者包含到文件中,其中包含其他类和函数的有关信息。 (3)main特殊名称,准确地表示程序在何处执行。 (4)“autoreleasepool”自动释放池:使得应用在创建对象时,系统能够有效地管理应用所使用的内存。 (5)调用名为NSLog的函数,传递给NSLog函数的参数是字符串:“@Hello World!”(@符号位于一对双引号的字符串前面,成为NSString对象)。NSLog不仅能 显示简单短语,还能显示变量的值及计算结果。例如, NSLog(@The sum of %i and %i is %i,value1,value2,sum);可以按格式输出变量的值。 二、Objective-C程序设计初步 2.1基本数据类型和表达式 2.1.1基本数据类型 与C++语言基本相同,不同的是,Objective-C添加了一种id类型,id数据类型可存储任何类型的对象,从某种意义上说,它是一般对象类型。id类型是多态和动态绑定的基础。基本数据类型如表2.1所示, 表2.1 2.1.2表达式 与所有的程序设计语言一样,运算符具有优先级,优先级较高的运算符首先求值。如果优先级相同,可按照“从左到右”或者“从右到左”的方向来求值,具体按哪个方向取值取决于运算符。例如常见的算术运算符、逻辑运算符、赋值运算符等等。 2.2基本控制结构 与大多数程序设计语言相似,包括顺序、选择、循环结构,在此不再累述。 三、类、对象与方法入门 3.1基本概念 ⑴对象 对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。 ⑵对象的状态和行为 对象具有状态,一个对象用数据值来描述它的状态。对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。对象实现了数据和操作的

文档评论(0)

youbika + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档