Objective-c接口和实现

时间:2014-02-27 18:11:44

标签: objective-c

实现的接口是否与函数定义的函数声明(在头文件中)相似? 如果我没有在界面中列出已经实现的所有方法怎么办?那么实例变量呢?

2 个答案:

答案 0 :(得分:2)

是的接口和实现可以被认为类似于标题和定义。

如果您没有列出某些已实现的方法,则无法从其他类中使用它们。此外,如果它们未在@interface部分中定义,如果您尝试使用在调用之后实现的函数,编译器将会抱怨

@implementation

- (void) functionA
{
     [self functionB]; // error, because 'so far' functionB has not been defined
}

- (void) functionB
{
}

编辑:请参阅Martin的评论如下。结束编辑

如果您没有定义实例变量,并且使用它们,则会出现错误。您使用的任何变量必须在本地或在类中定义。

答案 1 :(得分:1)

您的问题的答案: 实现的接口是否与函数定义的函数声明(在头文件中)相似?

YES

如果我没有在界面中列出已经实现的所有方法怎么办?那么实例变量呢?

这些方法将被视为可在该特定类中访问的私有方法和变量。

在接口中声明的变量(如1.)在实例化MyClass对象的其他类中可见。在2.中声明的变量只能在MyClass中可见。您应该阅读以下内容:http://developer.apple.com/library/ios/#referencelibrary/GettingStarted/Learning_Objective-C_A_Primer/

http://iosmadesimple.blogspot.in/2012/11/interface-and-implementation.html

我想所有这些都会帮助你更深入地理解这些事情。