实现的接口就像函数声明(在头文件中)到函数定义一样? 如果我没有在接口中列出所有已经实现的方法,该怎么办?什么是实例变量呢?Objective-c接口和实现
回答
是的接口和实现可以被认为类似于头和定义。
如果您没有列出一些已实施的方法,您将无法从其他类中使用它们。此外,如果他们没有在@interface
部分定义,编译器会如果您尝试使用已在呼叫
@implementation
- (void) functionA
{
[self functionB]; // error, because 'so far' functionB has not been defined
}
- (void) functionB
{
}
编辑之后已经实现的功能抱怨:参见下面马丁的评论。 END EDIT
如果您没有定义实例变量,并且您使用它们,则会出现错误。您使用的任何变量必须在本地或在类中定义。
回答您的问题: 接口到实现就像函数声明(在头文件中)到函数定义?
是
如果我没有在接口列表中的所有方法,这些方法已经实现了?什么是实例变量呢?
这些方法将被视为可在该特定类中访问的私有方法和变量。
在您的接口中声明的变量(如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
。
无法在Objective-C中声明私有方法。这些方法可以通过'[object performSelector:@selector(methodName :)];'从任何知道对象的类中访问。 –
- 1. 实现和接口
- 2. 显式接口实现和多接口
- 3. 实现接口和继承
- 4. 扩展和实现接口
- 5. 困惑接口和实现
- 6. 接口实现和LinkedList
- 7. Spring Boot - 接口和实现
- 8. vb.net和接口实现
- 9. Java接口和实现
- 10. 分离接口和实现
- 11. 实现接口
- 12. 实现接口
- 13. 实现接口
- 14. 实现接口
- 15. 接口实现
- 16. 如何在ObjectiveC中将非静态变量从接口移动到实现?
- 17. C#接口实现
- 18. 接口实现C#
- 19. 实现AIDL接口
- 20. 实现Iterable接口
- 21. TypeScript接口实现
- 22. GetEnumerator接口实现
- 23. 实现IDataErrorInfo接口
- 24. Java实现接口
- 25. F#接口实现
- 26. Java接口实现
- 27. 实现IEnumberable接口
- 28. XmlResourceParser:inferface实现接口?
- 29. 实现接口C#
- 30. 实现IConvertible接口
你是什么意思由本地定义的实例变量? –
当前编译器版本不*要求实现文件中的方法的前向声明。 –
@ Naughty.Coder不,我的意思是一个变量必须在本地定义到函数或执行块(意思是它不是一个实例变量),或者是类中的一个实例变量。 – Merlevede