由于还要做别的工作,只能有时间了才学习学习,前学后忘了,
下面这段程序中Enumeration en = v.elements();这句的知识点不太明白了,谁帮我讲解一下,非常感谢
Enumeration 是个接口,为什么直接像赋值一样呢?多态的应用不是要加new 对象的吗?import java.util.Enumeration;
import java.util.Vector;
public class VectorDemo { /**
* @param args
*/
public static void main(String[] args) {
Vector v = new Vector();
v.addElement("abc1");
v.addElement("abc2");
v.addElement("abc3");
v.addElement("abc4");
Enumeration en = v.elements();
while(en.hasMoreElements()){
System.out.println(en.nextElement());
}
}
下面这段程序中Enumeration en = v.elements();这句的知识点不太明白了,谁帮我讲解一下,非常感谢
Enumeration 是个接口,为什么直接像赋值一样呢?多态的应用不是要加new 对象的吗?import java.util.Enumeration;
import java.util.Vector;
public class VectorDemo { /**
* @param args
*/
public static void main(String[] args) {
Vector v = new Vector();
v.addElement("abc1");
v.addElement("abc2");
v.addElement("abc3");
v.addElement("abc4");
Enumeration en = v.elements();
while(en.hasMoreElements()){
System.out.println(en.nextElement());
}
}
参照下
import java.util.ArrayList;
import java.util.Collection;
public class CollectionDemo { /**
* @param args
*/
public static void main(String[] args) {
Collection coll = new ArrayList();
Collection c1 = new ArrayList();
Collection c2 = new ArrayList();
//show(coll);
show(c1,c2);
}接口是不能new的,那么这个Collection coll = new ArrayList();中Collection 是接口,为什么可以用new?是当类多态的应用吗?见笑了!!!!
1.“=”这个操作符是赋值操作符。对于对象使用这个操作符就是把引用赋给左边的变量。
2. new 操作符是创建一个新的对象的实例。在你的问题中,elements()方法返回 Enumeration 类型的引用。然后用‘=’ 赋值给左边对象。
所以和new没有关系。还有一点,实现接口的子类和接口是同种类型的。所以用"="操作符是可以的。
不知道这样解释,楼主明白否?
}
这个东西楼主记得嘛 都是类似的东西