Objective-C中的对象是什么?

时间:2011-07-24 01:10:34

标签: objective-c xcode pointers object

我以为我很清楚对象是什么......但我错了。谁能解释一个对象是什么?或者在编程时我应该怎么想呢? 请帮我理解。

我知道它不是指针..所以在一行代码中究竟是什么对象..

5 个答案:

答案 0 :(得分:4)

从概念上讲,在OOP中,对象是类的某个实例。类定义特定类型对象的信息和操作。典型的例子是Car类,它可能具有“颜色”属性并且可以“驱动”或“停放”。这些定义了汽车是什么。对象就是那种情况。世界上有数百万辆汽车,但只有一个汽车的定义

现在,这是一般的OOP视图。 Objective-C基于消息发送的概念具有相当纯粹的OOP模型。消息发送如下:[obj message]。本质上,Obj-C中的对象是响应消息的任何东西。这意味着即使是类也是对象。如果您想要更详细的描述,我的这篇博文应该有所帮助:http://pilky.me/view/21

答案 1 :(得分:2)

对象是类的实例。所以,假设你有一个班主任。 你可以在某处初始化他:

 Person *p = [[Person alloc] init];

p是指向内存中人物对象的指针。对象本身存在于创建了alloc的ram的sizeof(Person)块中。

答案 2 :(得分:1)

基本上,对象是数据和功能分组。所以你有状态(数据又称字段,变量)和行为(函数)。指针是您引用对象的方式(为了以后使用它,可能是检索数据,执行函数或发送消息)。

这里有一个简单明了的解释:http://gnustep.made-it.com/BG-objc/#AEN281

答案 3 :(得分:0)

查看本教程,了解Objective-C的基础知识:

http://cocoadevcentral.com/d/learn_objectivec/

如果您仍有疑问,请随时提出。

答案 4 :(得分:0)

我首先要说的是,在使用其他一些编程语言之后,Objective-C中对象的概念与其他面向对象编程语言中的概念几乎相同。在Wikipedia上有一个很好的写作。

我想说一个简单的思考方式就是“阶级”是一个蓝图。它描述了一件事应该如何运作。 “对象”是遵循该蓝图的事物的实际实例。

你正在建房子(程序)。你需要开钉子。您可以按照“类”定义描述的蓝图创建锤子“对象”的实例。现在你可以锤钉子了。

一个类通常有一个接口和一个实现。这允许您(和其他人)调用对象上的代码,只需(通常)查看界面。