2
A
回答
2
協議是一個類將要遵守的契約。當一個類符合協議時,它會告訴編譯器它將實現協議中聲明的所有方法和所有屬性。 在Objective-C中,類還需要一個超類。在很多情況下,這是NSObject
。超類實現了很多方法(如isEqual:
)。協議從不實現任何方法或定義任何屬性。
1
一個協議告訴哪個屬性/操作類必須執行。超類實現它們,你可以添加自己的東西在上面。
0
協議定義了類或結構必須實現的一組方法定義,非常類似於Java接口。
超類是給定類繼承其方法定義的類,這些方法的實現以及實例和類屬性。
相關問題
- 1. Swift子類與協議
- 2. Swift:協議與結構與類對比
- 3. Swift協議和協議擴展與CollectionType
- 4. 與泛型類型的Swift協議
- 5. Swift中的類內部協議
- 6. Swift類指針爲?類協議?
- 7. Swift正確聲明與協議相對應的對象並且擁有超類
- 8. Swift協議專用通用協議
- 9. 面向協議的編程和類Swift
- 10. Swift協議擴展中允許混合類/協議類型約束嗎?
- 11. 協議繼承在swift中
- 12. 在Swift中採用協議
- 13. Swift協議實例
- 14. Swift協議和equatable
- 15. Swift隱式協議
- 16. Swift協議比較
- 17. Swift動態類型初始化與動態協議類型
- 18. Swift中的協議擴展凡對象是一個類,並符合協議
- 19. 類型不符合協議Swift
- 20. Swift - 屬性類型和協議
- 21. Swift類「不實現(objc)協議」
- 22. 用Swift協議包裝回調類型
- 23. Swift:限制類只支持協議
- 24. Swift實現多個協議與委託
- 25. 符合協議的GMSAutocompleteResultsViewControllerDelegate Swift
- 26. Swift協議擴展帶有超類和子類的靜態方法調度
- 27. UIViewController中的present()函數的Swift協議
- 28. 協議與通用功能的關聯類型協議
- 29. 什麼是Swift中的「標記協議」?
- 30. 在Swift中的協議和授權
這裏有一個非常有用的關於協議的文檔:https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/WorkingwithProtocols/WorkingwithProtocols.html#//apple_ref/doc/uid/TP40011210 -CH11-SW1 –