红果园的猿
2016-12-26 12:59
采纳率: 33.3%
浏览 3.0k
已采纳

java接口的实现类如何创建对象

接口的实现类创建对象时,都要用多态吗?还是有什么其他的情况?因情而异?

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • jasondyoung 2016-12-26 14:38
    已采纳

    也是new,只是用接口的话,可以完成如下动作
    List list = new ArrayList();
    List list2 = new LinkedList();
    其实就是一个理,只要右边是左边的实现类,左边可以接收任何实现类的对象,
    对于左边来说,方法属性是固定的,具体的实现,看你的实现类,
    这样,当动态创建对象的时候,你可以控制实现类,而不必改变用接口写好的代码。

    比如

    ```public static void iterator(List list){
    Iterator it =list.iterator();
    while(it.hasNext()){
    System.out.println(it.next());
    }
    }

    public void static main(String[] args){
    iterator(new ArrayList());//传ArrayList对象也行
    iterator(new LinkedList());//传LinkedList对象也行,反正iterator这个方法,iterator内的代码不需要改变。
    }

    
    
    已采纳该答案
    评论
    解决 3 无用
    打赏 举报
  • oyljerry 2016-12-26 13:31

    一般接口类的目的就是为了多态,然后你实现具体的类。这样调用的地方就用接口就可以了

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题