5
我想封裝一個通用對象另一類沒有設置泛型類型參數。我創建了一個基類Animal<T>
,並從中定義了其他的子類。例如:如何在Swift中使用不帶類型參數的泛型類?
public class Animal<T: YummyObject> {
// Code
}
public class Dog: Animal<Bark> {
// Code
}
public class Cat: Animal<Meow> {
// Code
}
和定義的Animal
財產,沒有類型參數,在UITableView
延伸波紋管:
extension UITableView {
private static var animal: Animal!
func addAnimal(animal: Animal) {
UITableView.animal = animal
}
}
但這樣做的時候,我得到了以下編譯錯誤:
引用泛型類型
Animal
需要<...>
參數。
這似乎在Java罰款。我怎樣才能在Swift中完成同樣的事情呢?
能否請你告訴我們什麼是喵和樹皮。它是一個類,還是一個協議。此外,你想給動物分配一張表的原因是什麼,而不是一些協議。順便說一句,汽車不喵喵叫,它發出蜂鳴 – iWheelBuy
@iWheelBuy這是一個虛擬的對象和類 –
我會懷疑這是否是一般情況。除非您顯示更多相反的信息,否則這看起來像是協議的用例,而不是通用的。 – matt