成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

Java中的接口怎么實現(xiàn)-創(chuàng)新互聯(lián)

這篇文章主要介紹“Java中的接口怎么實現(xiàn)”,在日常操作中,相信很多人在Java中的接口怎么實現(xiàn)問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Java中的接口怎么實現(xiàn)”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

創(chuàng)新互聯(lián)專注于樂都網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供樂都營銷型網(wǎng)站建設(shè),樂都網(wǎng)站制作、樂都網(wǎng)頁設(shè)計、樂都網(wǎng)站官網(wǎng)定制、小程序開發(fā)服務(wù),打造樂都網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供樂都網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

接口的作用

接口的作用簡單一點就是:接口是用來標記類的,不同的類屬于不同的接口(通過向上轉(zhuǎn)型),管理接口比管理各種各樣的類方便多了,接口體現(xiàn)了抽象的觀點,什么是抽象?抽象就是"抽去像的部分"。

使用接口解決問題

問題:現(xiàn)在我們要寫個連接數(shù)據(jù)庫的類給用戶使用,有兩個函數(shù):一個返回Connection對象,另一個是關(guān)閉數(shù)據(jù)庫,close(),一般的解決方法是:給每個數(shù)據(jù)庫寫一個類,再根據(jù)用戶使用的數(shù)據(jù)庫決定使用具體的類。

好的,我們看看這樣有什么不好之處:

(1).首先每個類都要有重復(fù)的代碼,造成代碼的膨脹;

(2).其次最重要的是我們并不知道用戶使用什么數(shù)據(jù)庫,可能是Oracle,可能是mysql,也可能是sqlserver等,這個問題很難解決。

解決方案:

首先我們定義接口:


public interface DataBase
  {
  java.sql.Connection openDB(String url,String user,String password);
  void close();
  }


我們定義了兩個方法,openDB返回Connection對象,close()關(guān)閉數(shù)據(jù)庫;

具體的實現(xiàn)在實現(xiàn)DataBase接口的類中;

下面看看實現(xiàn):

import java.sql.*;
  public class Mysql implements DataBase
  {
  private String url=”jdbc:mysql:localhost:3306/test”;
  private String user=”root”;
  private String password=””;
  private Connection conn;
  public Connection openDB(url,user,password)
  {
    //連接數(shù)據(jù)庫的代碼
  }

  public void close()
  {
    //關(guān)閉數(shù)據(jù)庫
  }
  }


類mysql實現(xiàn)了DataBase接口,下面還有實現(xiàn)了DataBase接口的oraclesql等類;

這些類都歸于DataBase接口了,如何在應(yīng)用程序中使用呢?

我們要定義DataBase對象 myDB,通過myDB來操縱數(shù)據(jù)庫,可以不要分清是哪個類了。

另外的問題:Java中不許我們實例化接口,如DataBase myDB=new DataBase();

我們只能myDB=new Mysql()或者myDB=new Oracle()。這樣我們還必須指定實例化哪個對象,好像前面的努力都白費了啊!!那怎么辦呢,我們需要一個工廠:


public class DBFactory
  {
  public static DataBase Connection getConn()
  {
    Return(new Mysql());
  }
  }

實例化的代碼變成:myDB=DBFactory.getConn();

整個過程中接口不負責(zé)任何具體操作,其他的程序要連接數(shù)據(jù)庫的話,只需要構(gòu)造一個DB對象就OK,而不管工廠類如何變化。這就是接口的意義----抽象。

到此,關(guān)于“Java中的接口怎么實現(xiàn)”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

新聞名稱:Java中的接口怎么實現(xiàn)-創(chuàng)新互聯(lián)
本文網(wǎng)址:http://jinyejixie.com/article46/dchieg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司App開發(fā)、軟件開發(fā)外貿(mào)建站、響應(yīng)式網(wǎng)站網(wǎng)站設(shè)計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)
治县。| 安泽县| 洛南县| 封开县| 栾城县| 栾城县| 涞源县| 民丰县| 澄城县| 连平县| 原阳县| 屏边| 黄陵县| 正安县| 苍山县| 彭泽县| 盖州市| 昭平县| 成安县| 孟州市| 区。| 讷河市| 罗定市| 西盟| 吕梁市| 东明县| 余庆县| 阿瓦提县| 兴化市| 柘荣县| 大悟县| 元阳县| 陆良县| 丽江市| 湄潭县| 大方县| 广河县| 沐川县| 辰溪县| 调兵山市| 蚌埠市|