JAVA 接口List 的iterator()方法为何可以直接使用

请看一部分代码:BeerExpertbe=newBeerExpert();Listresult=be.getBrand(BearColor);out.println("颜... 请看一部分代码:
BeerExpert be = new BeerExpert();
List result = be.getBrand(BearColor);
out.println("颜色是 :" + BearColor);

Iterator it = result.iterator();
while(it.hasNext())
{
out.println("<H2>try "+it.next());
}

对象be的方法getBrand() 返回一个list类,
但是Iterator it = result.iterator(); 这个语句,List作为一个接口,它其中的方法
iterator()可以直接使用么?
接口的方法不是必须要通过继承类实现了才可以使用的么
展开
 我来答
百度网友ac7b053
2010-10-12 · TA获得超过340个赞
知道小有建树答主
回答量:237
采纳率:0%
帮助的人:151万
展开全部
1 你看BeerExpert 中方法返回的是实际是一个实体类,是继承了List的类,这个类已经实现了iterator接口中的方法
2 Iterator it = result.iterator(); 你这一句实际是调用的实体类中的iterator()方法

例如:

public List doSth()
{
doSth();
return new ArrayList();
}

我调用的时候可以 直接写 doSth().iterator(); 实际是操作new ArrayList()的iterator方法,而不是List的iterator方法

你说的这个是面向对象中最重要的一点,就是继承关系!

就说这么多了,有问题在问我喽!
pang68599
2010-10-12 · 超过16用户采纳过TA的回答
知道答主
回答量:87
采纳率:0%
帮助的人:48.6万
展开全部
be.getBrand(BearColor);是一个实现的List接口的类,这就是多态比如be.getBrand(BearColor);可能是一个ArrayList但是他实现了List接口所以List可以对象可以指向ArrayList对象,iterator()方法是一个标准,代表每个集合必须实现的方法,这个方法就是把集合对象转换成iterator对象,从而实现遍历.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wanggang204204
2010-10-12 · TA获得超过275个赞
知道小有建树答主
回答量:71
采纳率:0%
帮助的人:125万
展开全部
你看下be.getBrand(BearColor),它返回来就是已经实现了iterator()方法的对象,所以可以Iterator it = result.iterator();
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2010-10-12 · TA获得超过347个赞
知道小有建树答主
回答量:217
采纳率:0%
帮助的人:256万
展开全部
java.awt
类 List
java.lang.Object
java.awt.Component
java.awt.List
List是一个类
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2010-10-12
展开全部
这些不是应该写在action里面的么,接口只写调用方法。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式