java 为什么有接口_Java 为什么要有接口? Interface

让我们再举一个例子。

那就是java中的jdbc

在这个图中,我们可以看到Driver是一个接口,里面有一些方法(当然只是声明,并没有实现)

9fa7167cd323

image.png

那么,写这个接口有啥用呢???

我们都知道要连接不同的数据库,需要不同的jdbc包,

9fa7167cd323

image.png

上面这些包大家都很熟悉,分别是连接mysql等数据库的包,java 在自己的源代码中 定义了一个接口,里面是一些方法(如connect等),那么不同的厂商(mysql,db2等)都会implements 这些接口,按照自己的数据库 会有不同的实现,但是里面的方法都必须要有。

那么这样有啥用呢?

这样我们编写连接数据库的代码的时候,就不需要担心 各个厂商他们连接数据库 的方法名字(如connect)不同,假如mysql 连接定义成了connect_mysql(),db2的定义成了connect_db2()。 我们在编写代码的时候根本不会关心各个厂商 他们的连接方法名字是什么样,因为 肯定是 connect(java源码中规定的),这样 只需要一个接口,就能规范各个厂商的方法名和方法的参数(api),就是java一声令下,你们各个厂商都要统一一下对外的方法名称,不能一个叫 mysql_connect,一个叫db2_connect,这样的,因为这样会导致 用户在编写java程序时 需要分心来关心你们厂商每个的方法名。

所以,我们可以看出来,定义一个接口,其实是为了规范 业内统一,避免不同厂商 过多的,纷扰的,各不相同,的 API,对用户来说十分不友好。

我们想象一下 如果真的mysql的连接方法变成了mysql_connect(xx, x),而db2的则是db2_connect(xx,xx,x,x),这样 用户仅仅要连接一个数据库,就要去了解 很多厂商的连接方式(这其实就是 厂商对外 的API,之后讲一下API和接口的差别),加大了 用户的学习成本,对java 来说,想要更好管理数据库那一块也变得难了起来。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值