我有一個類似的行挖了一個開放源代碼項目:Java的抽象類擴展兩個類
abstract class AbstractClass<A extends ParentClass1,
B extends ParentClass2>
能否請你告訴我究竟是什麼意思?我認爲java不支持多繼承,所以我們現在在做什麼? A
和B
在這裏是什麼? :S
我有一個類似的行挖了一個開放源代碼項目:Java的抽象類擴展兩個類
abstract class AbstractClass<A extends ParentClass1,
B extends ParentClass2>
能否請你告訴我究竟是什麼意思?我認爲java不支持多繼承,所以我們現在在做什麼? A
和B
在這裏是什麼? :S
這裏A和B被放置只是可替換爲分別延伸ParentClass1和ParentClass2任何類持有者。當您創建此類的對象時,您可以將角度參數(<>)傳遞給角色。在編譯期間,這些參數將被編譯器替換爲A和B.
上面的代碼不表示多重繼承。請詳細閱讀generics以瞭解此內容。
如果您在<>
刪除的內容,然後就看到它的唯一
abstract class AbstractClass
這意味着,該類未擴展任何類都。
abstract class AbstractClass<A extends ParentClass1,
B extends ParentClass2>
基本上意味着,類想申報2個泛型A和B,並迫使其類型。這意味着,它希望班級的實施者提供分別擴展ParentClass1
和ParentClass2
的2個班級。
請參閱this更多的澄清
http://docs.oracle.com/javase/tutorial/java/generics/ – 2013-04-07 06:30:34