A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© JJJD 中级黑马   /  2015-6-26 22:44  /  307 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Map接口能不能new它自身的对象:如:Map map=new Map();这样写它一直报错,
但是写作它的子类接口才可以:如:Map map=new HashMap();这样可以。
查API,Map没有构造方法。
问题:是因为它没有构造函数所以不能new对象吗?还是其他原因?或者是我代码哪块写错了?

2 个回复

倒序浏览
首先Map 是一个接口,接口是需要一个类去实现的,接口是不能new,生成对象的,所以你的Map map=new Map();会报错。而API中你会看到他下面有一个所有已知实现类,这样就可以使用HashMap来实现它。

捕获.PNG (56.88 KB, 下载次数: 39)

捕获.PNG
回复 使用道具 举报
谢谢啦。。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马