为什么不能直接new Map

Map是个接口,HashMap是它的实现类。Map 是接口,是不能实例源化的,所以只能使用其实现类来实例化。

1

Map<String,String> m = new HashMap<String, String>();

只不过一般习惯在前面使用接口来进行创建。一般情况下,都是用接口来声明的。用Map的好处是new后面可以跟其他的实现,不一定是HashMap,可以跟其他的。用HashMap声明的话,new后面貌似就只能跟HashMap了。

扩展资料

接口的声明

1、接口名称第一个字符必须是I。

2、接口中的方法不能有访问修饰符,方法体(方法的具体实现):可以有方法参数和方法返回值。

3、接口中可以定义方法、属性、索引器、事件,不可以定义字段、运算符重载、构造、析构函数、static关键字。

4、实现接口中的方法时,需要添加访问修饰符。

5、如果一个类继承的有类和接口时,那么类一定要放到第一位置上。

6、如果多个接口中包含后相同方法名,的方法,我们使用隐式显示接口后,不知道这个显示的是哪个接口的方法,这个时候就需要。

显示实现接口。显示实现接口 void IInterface.Add(){},需要指定那个接口里面的方法,调用的时候需要把子类转换成父类。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值