objective-c - iOS:如何使接口(interface)无法实例化?

标签 objective-c ios

首先我设计了一个协议(protocol)作为我的基类,它无法实例化。后来我发现符合这个协议(protocol)的类之间应该有一些共享方法,所以我想在协议(protocol)中添加一些默认实现
AFAIK,Obj-C 不支持具有默认行为的协议(protocol),因此我必须将其设为一个接口(interface)。然后就产生了我的问题,如何让接口(interface)无法实例化?

谢谢。

最佳答案

接口(interface)永远无法实例化。也许您正在考虑抽象类,这在 Objective-C 中并不真正可用。也许你应该重新考虑你的程序结构并尝试使用更多的继承。如果您继承的类符合某个协议(protocol)(这有点像 Objective-C 中的 Java 接口(interface)),那么您可以实例化它,或者子类化它,然后实例化它。

查看此处,了解有关继承的更多信息:http://www.techotopia.com/index.php/Objective-C_Inheritance

关于objective-c - iOS:如何使接口(interface)无法实例化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10479215/

相关文章:

ios - 将 UI 手势识别器添加到从 .xib 实例化的 UIView

ios - Xamarin.Forms iOS UIKit.UIImage 错误

iphone - 使 UIView 更改其 super View (或 super View 的 super View )?

objective-c - CFUrl 和 NSUrl 有什么区别

iphone - 从 NSThread 函数调用时,不会调用 NSURLConnection 委托(delegate)

objective-c - 在 ctrl-click/右键单击 NSTableView 的标题上显示上下文菜单

objective-c - '只能使用 -performBlock : on an NSManagedObjectContext that was created with a queue.' 错误

ios - MKMapViewDelegate:替代监听区域更改事件

ios - iOS 11 上 UITableView 中的 UISearchController 问题

ios - 开发将在所有 iPhone 设备上运行的 iPhone 应用程序