读书人

关于set的一个有关问题

发布时间: 2012-09-23 10:28:11 作者: rapoo

关于set的一个问题
HashMap map = new HashMap();
Set set = map.keySet();
在java中 Set是一个接口,为什么能够这样用?
接口不是只有被实现后才可以用吗?

[解决办法]
Set set = map.keySet();

map返回的是一个实现set接口的对象。这个对象实现了Set接口,就可以这样赋值。或者说叫向上转型也可以

就好比你写List a = new ArrayList();
list是接口,arrayList是实现list接口的对象。
[解决办法]
这是向上转型,实现了set接口就可以向上转型为set

读书人网 >J2SE开发

热点推荐