A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 目标 中级黑马   /  2014-3-12 23:25  /  1458 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

今天看集合毕姥爷说了一句话是:接口的引用只能指向自己的子类对像,为什么呢?求解释eg:Iterator it = al1.iterator( );

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

6 个回复

倒序浏览
你看看这个,我查了半天,这个说法容易理解http://zhidao.baidu.com/question/112673407.html?fr=qrl&index=0&qbl=topic_question_0&word=Iterator%20%D4%F5%C3%B4%CA%B5%CF%D6%BD%D3%BF%DA
回复 使用道具 举报
这是返回的一个直接实现对象  内部已经implements Iterator 了 你可以这样理解  已经实现的子类以多态的方式接受
  1. Iterator it =  new Iterator(){public boolean hasNext(){}
  2.                                                 public E next(){}
  3.                                                 public void remove(){}};
复制代码
回复 使用道具 举报
我的理解是接口的子类的父类就是接口,在多态中父类引用是可以指向自己的子类对象的,所以接口也可以只想自己的子类对象。这里要考虑的问题是子类是不是可以创建对象。
回复 使用道具 举报
午夜b'Boy 来自手机 中级黑马 2014-3-13 08:55:35
报纸
接口是实现此接口的父类,有继承关系,所以接口才能指向其子类,此为多态,没关系,彼此不认识,也就没任何联系
回复 使用道具 举报
因为接口只能声明,不能实例化,而接口本质上也是类(只是可以实现多继承),他不能自己实例化,就只能实例化他的实现类(子类)了!

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
接口不能实例化  只能指向子类 对象  这就是传说中的多态
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马