我知道擴展是爲了擴展你無法訪問原始源代碼的類型,但是一些開發者在自己創建它的類中使用了擴展。我在哪裏使用擴展名?
對不起,我的英語:(
例如:
class Category: Mappable {
var PostCategoryId: Int?
var Name: String?
private(set) var Slug: String?
private(set) var PostCategoryParentId: Int?
private(set) var PostCategoryParentPath: String?
var childCategories: [Category]?
var parentCategory: Category?
init() {
}
}
extension Category {
enum CategoryId: Int {
case Comedy = 4
case Action = 6
case Animation = 10
}
}
有時它僅用於可讀性。例如。當我符合新的協議時,我可以通過擴展來實現,並且有乾淨的代碼。 – eMKa
在你的情況下,它不會真正幫助你。 我只有在我有一個其他地方的課程時,我才使用它們,我沒有允許編輯,所以我可以使用擴展將類添加到課程中。或者當你需要編輯一個swift類時,你可以添加你自己的擴展函數。 – ahdgfd
這不是重複的。另一個問題特別要求關於類的擴展,而這個問題更爲普遍,可能包括協議擴展。 – Lew