中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Java中的接口怎么實現

發布時間:2022-01-05 17:59:40 來源:億速云 閱讀:143 作者:iii 欄目:編程語言

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

接口的作用

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

使用接口解決問題

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

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

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

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

解決方案:

首先我們定義接口:


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


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

具體的實現在實現DataBase接口的類中;

下面看看實現:

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)
  {
    //連接數據庫的代碼
  }

  public void close()
  {
    //關閉數據庫
  }
  }


類mysql實現了DataBase接口,下面還有實現了DataBase接口的oraclesql等類;

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

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

另外的問題: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();

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

到此,關于“Java中的接口怎么實現”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

江永县| 凤翔县| 巴彦县| 兰坪| 辛集市| 阳谷县| 荣成市| 巨野县| 建阳市| 高平市| 娄烦县| 新源县| 临清市| 普宁市| 台东县| 佳木斯市| 通渭县| 绥滨县| 宿松县| 祁东县| 湄潭县| 景谷| 旬阳县| 甘孜| 莎车县| 华池县| 石嘴山市| 竹北市| 沿河| 盐源县| 吉水县| 青阳县| 临漳县| 西昌市| 三门县| 塘沽区| 越西县| 岳西县| 洞口县| 共和县| 深泽县|