接口中可以含有变量和方法。但是,接口中的变量会被隐式地指定为public static final变量(并且只能是public static final变量,用private修饰会报编译错误),而方法会被隐式地指定为public abstract方法且只能是public abstract方法(用其他关键字,比如private、protected、static、 final等修饰会报编译错误),并且接口中所有的方法不能有具体的实现,也就是说,接口中的方法必须都是抽象方法。
这些都是大家熟知的,但是我想说的是:
包的调用,使得接口中的抽象方法能直接使用,例如Iterator接口中的方法,可以直接调用
Collection c1 = new ArrayList();
c1.add("123");
c1.add("456");
c1.add("789");
Iterator it = c1.iterator();
while(it.hasNext();)
System.out.println(it.next());
这里着重强调包的调用。
时间: 2024-10-10 14:56:08