java api 那么多_为什么java要有那么多接口(Interface)?有什么好处?

這個好處多多啊, 所謂的接口就是只給出了函數聲明,但是沒有函數體的類嘛 ,函數體在實現類中給出.

假設你有一個數據庫Dao, 給上一級程序用的: 就是 DatabaseDao dao = new DatabaseDao();這樣子

DatabaseDao{

insert(); 增

delete(); 刪

update(); 改

query() ; 查

}

然後你突然發現你根據需要,程序要鏈接兩個數據庫 一個orcale, 一個 sql server

你就寫了 兩個Dao的實現類orcaleImpl, SQLServerImpl

orcaleImpl implement DatabaseDao(){

insert(); 增orcale

delete(); 刪orcale

update(); 改orcale

query() ; 查orcale

}

SQLServerImpl implement DatabaseDao(){

insert(); 增SQL Server

delete(); 刪SQL Server

update(); 改SQL Server

query() ; 查SQL Server

}

這樣做的好處就將 Dao層和程序上面的其他部分開了, 其他人調用的時候也只是使用DatabaseDao dao = new DatabaseDao(); Dao接口, 具體後面用什麼數據庫 就看具體哪個去實現該接口了.

對應程序的維護有很大幫助, 假設這時候你要添加一個新數據庫 MySQL, 你也就只需創建一個MySQLImpl的類而已, 而其他地方都不用進行修改的.

server跟Dao的原理是一樣一樣的 .

具體分層 頁面 -> controller (調用server接口) -> server(調用Dao接口 ) -> Dao -> database

如果要類比現實中的物體, 就想樓上說的USB接口一個道理, 你永遠不知道USB具體是怎麼回事, 但是你永遠都知道USB接口能被上一級使用,也就是你的手機, 平板,同時使用, 此時USB接口就像一個標準一樣,被社會大眾所接收了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值