Function Swift保留函数名?

Function Swift保留函数名?,function,methods,swift,reserved,Function,Methods,Swift,Reserved,有人能解释一下某些函数是如何被调用的吗?当有人创建一个新对象时,是否会自动调用名为init的函数:var-object:type=type(param1)。 我在NSURLConnection中也看到了这一点。方法似乎有一些名称,如connectiondFinishLoading或其他什么,但我不明白,该名称是否被编码到swift语言中以进行特殊操作?连接一结束,该功能就可以运行吗?比如,除非您向该函数“发送消息”,否则它怎么知道呢。好的,首先,在Swift中,您不再向对象“发送消息”。函数和方

有人能解释一下某些函数是如何被调用的吗?当有人创建一个新对象时,是否会自动调用名为init的函数:
var-object:type=type(param1)

我在
NSURLConnection
中也看到了这一点。方法似乎有一些名称,如
connectiondFinishLoading
或其他什么,但我不明白,该名称是否被编码到swift语言中以进行特殊操作?连接一结束,该功能就可以运行吗?比如,除非您向该函数“发送消息”,否则它怎么知道呢。

好的,首先,在Swift中,您不再向对象“发送消息”。函数和方法调用由编译器直接链接在一起。唯一的例外是当您拥有从
NSObject
继承的对象时,因为它仍然在Objective-C运行时上运行

其次,
type(param1)
init
函数的一个示例。它不是“自动”调用它。这就是你的定义。创建对象时直接调用它

第三个
connectiondFinishLoading
是在
NSURLConnectionDataDelegate
上定义的。当您创建一个
NSURLConnection
时,您可以给它一个应该实现此协议的委托。如果将对象设置为实现协议的委托,则
NSURLConnection
实例将在适当时调用该方法。这就是整个UIKit和Cocoa的工作原理