【发布时间】:2016-11-25 06:51:32
【问题描述】:
我正在阅读有关有效 Java 中的泛型第 23 条的内容。如下所述:
虽然可能会不小心将硬币插入邮票中 收藏可能显得牵强,问题却是实实在在的。例如, 很容易想象有人将
java.util.Date实例放入 应该只包含java.sql.Date实例的集合。
我无法理解作者所说的“很容易想象有人将 java.util.Date 实例放入应该只包含 java.sql.Date 实例的集合中”是什么意思?
Collection<java.util.Date> dateColl = new ArrayList();
String strDate = "2011-12-31 00:00:00";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd hh:mm:ss");
java.util.Date date = sdf.parse(strDate);
java.sql.Date sqlDate = new Date(date.getTime());
dateColl.add(sqlDate);
为什么上面的代码没有抛出编译错误?
【问题讨论】:
-
更好的问题:为什么你认为它应该是一个编译错误?
-
sorry last statement is wrong 它应该是 sqldate 而不是更正的日期。
标签: java generics effective-java