举例:
List list=new ArrayList();
好处:面向接口编程
程序要尽量依赖于抽象,不依赖于具体。若希望用LinkedList的实现来替代ArrayList的话,只需改动一行即可,其他的所有的都不需要改动。
List list=new LinkedList();
注意事项:
接口引用不能使用实现类中有,接口中没有的方法
public interface Animal {
void say();
void listen();
}
public class Dog implements Animal {
@Override
public void say() {
System.out.println("say");
}
@Override
public void listen() {
System.out.println("listen");
}
public void run(){
System.out.println("run");
}
}