問題:
在ArrayList 應用中有這樣的代碼:
ArrayList a=new ArrayList();
a.add(...);
Iterator i=a.iterator();
理解:Iterator i=a.iterator();
Iterator 是一個接口,在上面a.iterator()方法的作用是返回一個接口
hasmore(),next()是怎么被實現的?
處理:
迭代模式
ArrayList內部有一個實現了Iterator 接口的類,a.iterator就是返回它內部類的一個實例,即返回一個實現了的iterator接口的類。
接口是一個類型,相當于一個父類型(supertype),可以用一個接口引用一個實現了此接口的類的實例。這樣只能用接口提供的方法來訪問此對象,可以限制訪問,隱藏具體實現。
posted on 2006-03-22 22:35
xnabx 閱讀(244)
評論(0) 編輯 收藏 所屬分類:
Java