public class BlockingQueue<T> {
public static List<T> queue =new ArrayList<T>();
}
我在å°è¯•åˆ›å»ºé€šç”¨Arraylist
æ—¶é‡åˆ°é”™è¯¯ï¼Ÿ
ç”案 0 :(得分:2)
这是有é“ç†çš„。想想T
çš„å«ä¹‰ - 您定义的是æ¯ä¸ªå®žä¾‹æŒ‡å®šå…¶é€šç”¨å…·ä½“类型的类。
然而é™æ€æˆå‘˜å±žäºŽç±»è€Œä¸æ˜¯ç‰¹å®šå®žä¾‹ã€‚å½“ä½ åœ¨å…¶ä¸å®šä¹‰ä¸€ä¸ªé™æ€æˆå‘˜æ—¶ï¼Œè¿™å–å†³äºŽè¿™æ ·çš„T
它会是什么?é™æ€æ²¡æœ‰å®žä¾‹ - 所以T
。
如果您希望queue
æˆä¸ºè¯¥å®žä¾‹çš„æˆå‘˜ï¼Œå¹¶ä¾èµ–于T
ï¼Œè¯·åˆ é™¤static
:
public class BlockingQueue<T> {
public List<T> queue = new ArrayList<T>();
}
ç”案 1 :(得分:2)
类的T
å‚数化类型与类的实例相关è”,而ä¸ä¸Žç±»æœ¬èº«ç›¸å…³è”,但static
是类而ä¸æ˜¯å®žä¾‹ä¿®é¥°ç¬¦ã€‚
å› æ¤ï¼Œç¼–译器ä¸æŽ¥å—您从é™æ€å—段/方法引用T
。
定义泛型类是利用实例指定的泛型的基础
å› æ¤åˆ 除é™æ€modifier
更有æ„义:
public class BlockingQueue<T> {
public List<T> queue = new ArrayList<T>();
}
ç”案 2 :(得分:0)
我å‘现错误我试图创建é™æ€å¼•ç”¨ï¼Œæˆ‘错过了。下é¢çš„工作代ç 。谢谢@chrylis
public class BlockingQueue<T> {
public List<T> queue =new ArrayList<T>();
}