[英]Having a hard time with generic classes and generic methods in java
java的新手,我確實搜索了一些例子,但我真的很難過。
我有一個使用泛型的節點類:
public class Node<T> {
private int key;
private T data;
private Node<T> nextNode;
}
節點是好的。
public class GenericDictionary implements GenericDictionary_interface {
private int capacity;
private Node<T> [] slots;
public void add (Node<T> newNode) {
}
}
我想這就是我寫它的方式。 我希望GenericDictionary與節點對象一起使用。
我收到一個錯誤:“T無法解析為類型”。
事情是我不知道它應該是什么樣子。
您的GenericDictionary
類也需要是通用的:
public class GenericDictionary<T> ...
{
}
那時,在類中使用Node<T>
會很好。
如果接口包含add
方法,那么接口應該也是通用的:
public class GenericDictionary<T> implements Dictionary<T>
{
}
順便說一句,我建議不要使用名為GenericDictionary_interface
的接口......如果只有一個實現,你可以調用接口GenericDictionary
和實現GenericDictionaryImpl
- 有點可怕,但相當普遍。 如果有多個實現,請通過某些區分方面命名實現。
在你的第二個中,它不知道T是什么類型,所以你需要將它添加到聲明中
public class GenericDictionary<T> implements GenericDictionary_interface {
private int capacity;
private Node<T> [] slot;
public void add (Node newNode) {
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.