java为什么要使用接口回调

来源:互联网 发布:数据库范式举例 编辑:程序博客网 时间:2024/06/06 02:46

也许你在编程的过程中会发现这样一行代码:格式如:
接口 接口变量 = new 接口 子类();

Link<String>  link = new ArrayList<String>();//Link为一个接口 ArrayList为一个泛型类

那么为什么前面要用接口引用new 出来的对象呢?

可以告诉你的是,这是接口的回调,是接口多态的一种方式。

但是为什么要这样使用呢?其优点在哪里?有什么缺点?

在回答之前,我先介绍一下接口相关内容。

**

接口是java一种重要的数据类型,用接口声明的变量称为接口变量,接口属于引用型变量,接口变量中可以存放实现该接口的类的实例的引用,即存放对象的引用。

**
下面举例说明为什么要这麽使用:

//1.Collection co = new ArrayList();//2.ArrayList co = new ArrayList();

我们一般情况下使用的是第二种方法,如果使用第一种方法会导致co中没有ArrayList的方法,但是这样的话,便可以屏蔽具体的方法的实现,换而言之,只需要知道co做什么,而不是怎么做。如果有一天ArrayList换成了另一种的实现如anotherlist呢,我们第一种方法只要修改new的地方,对象co还能继续使用,然而第二种便不能了。如果只有一种实现,那么接口便没有存在的必要,接口本身就是为了多实现而存在的。

2 0
原创粉丝点击