现在的位置: 首页 > 综合 > 正文

斯坦福大学公开课:iPhone开发教程2010年冬> 各种基础的类,功能,对象和实例的介绍

2013年12月02日 ⁄ 综合 ⁄ 共 1114字 ⁄ 字号 评论关闭

Class(类): 是实例的蓝本

Instance(实例):类的数据

Method:功能

Encapsulation封装

Polymorphism多态性

Inheritance继承 基础类 子类重写功能 扩展继承类NSObject是举出类

Objective-C是C语言严格的超集,你在C语言上写的任何东西,都能创建和运行在OC上。你可以使用任何C语言的代码在OC的应用里编译,它都能工作。OC种增加一些语法,让你能创建类和功能。我们将讨论把消息发送到对象。基础库的部分我们会迟些讨论。更多有关创建你自己的对象。OC只支持单一继承,可以说是C++中模型的简化。在OC中,每一个类只有一个确切的超类。因此继承模型是相当的简化。这是一个非常直接的链接。从基类到达更深的超类。这里有定义协议的有趣方法。协议是多个功能的集合,你集合了几个功能,然后可以指出一个特定的类去实现此协议。这会告诉编译器这个类会执行这个功能集。在这特定协议的一些方法,可以是必须或者可选的。委托基本上是一个对象需要去提问另一个对象的问题。其他对象就成为另一个对象的委托。要记住协议及其实现方式。OC中有一个动态运行库,所以它比C++更动态一点。当你要发送消息给对象时,该代码将以消息不确定的情况运行,直到该消息实际发出了一个运行时间。编译器不会去决定什么代码是任何消息发送的结果。OC是松散的类型。知道对象并不一定要知道它的类型。OC引入了一个新的类型叫ID。它基本上是一个对象的引用。对象的类型是不确定的。对编译器而言,该对象能实现任意一个功能,它知道的任何对象都能实现。如果你要将消息发送到一个ID类型的对象,编译器会那么做,因为它不知道这个对象是什么特定类型。这不重要因为它会在运行时搞清楚。类本身也是对象,它代表的类型叫做类。动态运行时间。所有oc对象都是在堆上产生出来的。所有OC的对象都从堆里分配好了,所以它们都是动态的。当你创建一个对象。它会在你销毁它之前一直存在。它不会在你退出功能前销毁。比如你有一个peison类,你调用这个类,并返回person一个新实例。然后替你autorelease。

发送消息实际用的语法。

[receiver message]

[receiver message:argument]

[receiver message:arg1 andArg:arg2]

在OC里有单独的布尔类型。它是大写BOOL或者你还有一些单独的常量去定义1和0,明显的是大写的YES和NO。

有一个类型定义了Selector 它的功能像指针。selector拥有类型SEL,它经常使用在UIControls里,代码中常量的方法是写成@selector

description 对象的描述

抱歉!评论已关闭.