关于java泛型。Map m = new HashMap();

2024-12-31 14:01:37
推荐回答(3个)
回答1:

首先list是一个接口 因此list = new list是错误的, 其次为什么是list = new arraylist而不用arraylist = new arraylist, 两种写法都能正确运行, 但是根据面向对象设计原则中的依赖倒转原则, 应该依赖接口而不应该依赖具体实现, 具体原因需要自己的经验积累慢慢体会

回答2:

泛型在Map这里的意思是可以定义任意类型。
比如,Map map=new HashMap();
这个String可以换成任意的类型,Integer,Object等等,
还可以换成自己定义的类,比如
Map m=new HashMap();

回答3:

List是接口,不是类,接口不能直接new