JAVA中返回值是接口类型的数据,怎么理解?

2025-02-25 01:38:51
推荐回答(5个)
回答1:

接口只负责声明方法,
具体方法体得看它的实现类,它的实现类里肯定得显式或隐式创建

Set setInstance=new HashSet();
return setInstance;
-_-|| 先还是好好理解一下多态和上溯造型吧,看这么复杂的结构只会更迷糊

回答2:

通常是遍历时用

HashMap m=//...填好数据
for(Entry e: m.entrySet()){ //获得元素组集,并遍历出每个键和值
           System.out.println("键:"+e.getKey()+", 值:"+e.getValue());
}

回答3:

实际返回的是某个类的对象,这个类实现了对应的接口

跟List list = new ArrayList();是类似的东西

回答4:

调用实现这个接口的子类得到的数据,比如:
Map set=new HashMap();
set.put(1, 11);
set.put(2,22);
for(Entry entry:set.entrySet()){
System.out.println(entry.getKey()+":"+entry.getValue());
}
接口可以调用实现这个接口的子类的方法

回答5:

接口不能被实例化,所以返回的其实是实现接口类的对象,所有实现该接口的类对象都可以是该函数的返回值,这其实是多态的特点啦兄弟