零基础,不懂就问,objective-c的消息(一年后的更新)
PHP中文网
PHP中文网 2017-04-24 09:12:43
0
1
421

在objective-c编程的教程中,有一个是关于消息详解的内容,但不是很能理解。

消息发送(指令)必须写在一对方括号中,并且必须包含以下两部份。

  • 指针,指向接收消息的对象。

  • 方法名,要触发的方法的方法名。

但是我看到例子里,好像有的消息是没有指针的,代码如下:

NSDate *now = [NSDate date];
NSLog(@"the new date lives at %@", now);
double seconds = [now timeIntervalSince1970];
NSLog(@"It has been %f seconds since the start of 1970.", seconds);

在第三行代码里,now是一个指针,我可以理解。但在第一行代码里,好像消息发送是没有指针的,也许我的理解有误,NSDate就是一个指针,只是我不知道。

希望有好心人帮我〜


将近一年的时间因为工作太忙,没有好好学习,前段时间项目告一段落,又捧起书本。结果看到上面的一段内容还是无法完全理解,或者说不知道自己理解的是否正确,还是回来这里再问问大家吧,谢了!

补充内容

我找到了英文原版的这部份内容,如下:

NSDate *now = [NSDate date];

[NSDate date]

NSDate

the receiver : a pointer to the object or class that has the method that you want to execute.

date

the selector : the name of the method that you want to execute

selector这一段可以理解,但是NSDate receiver这一段,我还是理解得比较模糊,我理解的是拥有执行方法的指针对象或者类?可以点拨一下我么?谢谢大家了!

PHP中文网
PHP中文网

认证0级讲师

全部回复(1)
伊谢尔伦

NSDate就是接收消息的对象
这里的指针 并不指代C语言中的指针类型, 这里应该是翻译或者表述问题。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板