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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马TYR 中级黑马   /  2015-4-12 00:13  /  1020 人查看  /  13 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

为什么老毕视频里要用Map map = new HashMap(); 而不是HashMap map = new HashMap();来建立集合呢?

评分

参与人数 1技术分 +1 收起 理由
lwj123 + 1

查看全部评分

13 个回复

倒序浏览
典型的多态啊!
回复 使用道具 举报
两种都可以
第一种是多态
第二种是具体类创建对象
回复 使用道具 举报
因为老毕要讲的是Map集合的共性方法,而Map是一个接口,不能创建对象,所以用多态的形式来指向子类

评分

参与人数 1技术分 +1 收起 理由
lwj123 + 1

查看全部评分

回复 使用道具 举报
两个应该都可以吧
回复 使用道具 举报
两个都可以,第一个是多态
回复 使用道具 举报
多态的运用。。。。。。。。。。。。。。。。
回复 使用道具 举报
两者都可以,没有什么不行滴。看你个人习惯。
回复 使用道具 举报
lhtwm1 中级黑马 2015-4-13 23:50:17
9#
多态  以后会经常用得到,  子类调用父类的方法
回复 使用道具 举报
都可以,无所谓了
回复 使用道具 举报
因为Map是一个接口,不能直接建立对象。HashMap是它的一个子类 Map map=new HashMap();是多态形式,父类引用指向子类对象。像Map map=new TreeMap(); 也是一样的。当然也可以直接用HashMap建立对象。
回复 使用道具 举报
如果要父类方法 就多态
如果要子类方法 就正常new
回复 使用道具 举报
两者是效果是一样的。老毕写第一个肯定是讲Map的时候这样写,因为Map是接口,不能实例化,所以实例的是子类对象,这是多态。等讲到hashmap的时候肯定写后者了。
回复 使用道具 举报
多态的使用,主要实例化子类对象
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马