MapStringObject data=new HashMapStringObject 与HashMapStringObject data=new HashMapStringObject 有什么区别
这两个语句的区别在于变量的声明和初始化方式不同。
第一个语句:
Map<String,Object> data=new HashMap<String,Object>
这个语句先声明了一个变量data,类型为Map<String,Object>,然后通过new关键字创建了一个HashMap<String,Object>的实例,并将该实例赋值给data变量。
第二个语句:
HashMap<String,Object> data=new HashMap<String,Object>
这个语句直接声明了一个变量data,类型为HashMap<String,Object>,然后通过new关键字创建了一个HashMap<String,Object>的实例,并将该实例赋值给data变量。
在功能上,这两个语句是等价的,都是创建了一个HashMap<String,Object>类型的实例。但在编程时,建议使用第一个语句,即声明变量时使用更抽象的接口类型(Map),而不是具体的实现类(HashMap),这样有利于代码的扩展和维护。
原文地址: https://www.cveoy.top/t/topic/i7PO 著作权归作者所有。请勿转载和采集!