包裹(package)和java介面(interface in java)的區別

Java中的Package和Interface的主要區別在於,Package有助於對類進行有條理的分類以方便訪問和維護,而Interface則有助於實現多個繼承和實現抽象。...

Java中的Package和Interface的主要區別在於,Package有助於對類進行有條理的分類以方便訪問和維護,而Interface則有助於實現多個繼承和實現抽象。

Java是最流行的編程語言之一。Java的主要優點是它支持面向對象編程。這種方法允許在軟件中對真實世界的對象進行建模。類是創建對象的藍圖。每個對象都包含描述屬性的數據或字段,或者包含描述行為的屬性和方法。本文討論了Java語言中與OOP相關的兩個概念:包和接口。

目錄

1. 概述和主要區別
2. Java中的包是什麼
3. Java中的接口是什麼
4. 並排比較——以表格形式顯示Java中的包與接口
5. 摘要

什麼是java包(package in java)?

Java提供了大量的類。將所有類保存在一個文件夾中可能很困難,因為很難訪問。這會影響程序的可管理性。Java使用包來排列類。它類似於文件夾。javaapi根據功能將類分組到不同的包中。因此,每個包都包含一組相關的類。

java中的包示例

下面是幾個示例包。這個java.io文件包包含輸入、輸出支持類。它包括文件、PrintStream、BufferInputStream等java.net網站包包含與網絡相關的類。例如URL、Socket、ServerSocket。這個java.awt文件包包含構建圖形用戶界面所需的所有類。這些是很少的javaapi包。

當程序員想在程序中使用某個類時,他應該導入那個包。如果程序員想在java.io文件包,他應該寫進口聲明如下。

進口java.util.BufferInoutStream;

下面的語句將導入util包中的所有類。

進口java.util文件.*;

也可以創建用戶定義的包。

打包員工;

公辦職工{

}

根據上面的示例,employee就是包名。Employee類是Employee包的一部分。此文件另存為僱員.java給員工包。

此外,還可以將公共類從一個包導入到另一個包。請參閱以下示例。

包裹(package)和java接口(interface in java)的區別

圖01:A級

包裹(package)和java接口(interface in java)的區別

圖02:B類

類在包1中,它包含名為display的公共方法。類B在包2中,它包含main方法。即使它們在不同的包中,類B也可以通過導入package1來創建類A的對象。導入包1後,類B可以訪問類A的數據和方法。

總的來說,Java中的包有助於組織項目文件。這在開發大型系統時非常有用,因為它允許以有條理的方式存儲所有文件。除此之外,javaapi包允許程序員使用已經存在的類。

什麼是java接口(interface in java)?

有時程序員可能不知道方法的定義。在這種情況下,程序員只能聲明方法。抽象方法是沒有定義的方法。只有聲明。當至少有一個抽象方法時,該類成為抽象類。此外,抽象類可以包含抽象方法,也可以包含非抽象方法。程序員不能從抽象類中創建對象。

當一個類擴展一個抽象類時,新類應該定義抽象類中的所有抽象方法。換句話說,假設抽象類A有一個名為display的抽象方法。類B擴展了類A。然後類B應該定義方法顯示。

java接口示例

假設A和B都是抽象類。如果類C是擴展A和B,那麼C類必須定義這兩個類的抽象方法。這是多重繼承。Java不支持多重繼承。為了實現它,程序員應該使用接口。如果A和B是接口,那麼C類可以實現它們。參考以下示例。

包裹(package)和java接口(interface in java)的區別

圖03:接口A

包裹(package)和java接口(interface in java)的區別

圖04:接口B

接口A有display1抽象方法,接口B有display2抽象方法。

包裹(package)和java接口(interface in java)的區別

圖05:C類

類C同時實現A和B接口。因此,它應該定義這兩種方法。

包裹(package)和java接口(interface in java)的區別

圖06:主要方法

現在在main方法中,可以創建一個C對象並調用這兩個方法。同樣,接口有助於在Java中實現多重繼承。

除了多重繼承,接口還有助於實現抽象。它是OOP中的一個主要概念。抽象允許隱藏實現細節並只向用戶顯示功能。此外,它允許關注對象做什麼,而不是它是如何做的。由於接口由抽象方法組成,它有助於歸檔抽象。

包裹(package)和java接口(interface in java)的區別

包是一組提供訪問保護和命名空間管理的相關類。接口是一個類似於類的引用類型,類是抽象方法的集合。包有助於有條理地對類進行分類,以便輕鬆地訪問和維護它們。另一方面,接口有助於實現多個繼承和實現抽象。這是Java中包和接口之間的主要區別。此外,編寫包的方法是使用小寫字母,例如java.util文件, java.awt文件. 如果接口的名稱是Area,則將其寫入interface Area。

包裹(package)和java接口(interface in java)的區別

總結 - 包裹(package) vs. java接口(interface in java)

Java中的Package和Interface的區別在於,Package有助於對類進行有條理的分類,以便於訪問和維護,而Interface則有助於實現多個繼承和實現抽象。

引用
  • 發表於 2020-10-18 11:01
  • 閱讀 ( 51 )
  • 分類:科技

你可能感興趣的文章

扔(throw)和丟擲java(throws in java)的區別

...用於異常處理的關鍵字。 扔(throw)和丟擲java(throws in java)的區別 Java中的throw vs throws throw是Java中用來顯式丟擲異常的關鍵字。 throws是Java中用來宣告異常的關鍵字。 多重例外 throw不能有多個異常。 丟擲可能有多個...

  • 發佈於 2020-09-21 19:02
  • 閲讀 ( 54 )

字串緩衝區(string stringbuffer)和java中的stringbuilder(stringbuilder in java)的區別

... 摘要 什麼是java字串(string in java)? 字串類在java.lang語言包裹。程式設計師每次建立字串時,它都是String型別的物件。字串是不可變的,這意味著一旦建立了物件,就不能更改它。使用諸如Integer、Byte、Float、Double等包裝類建立...

  • 發佈於 2020-10-02 19:22
  • 閲讀 ( 45 )

等於(equals)和java中的hashcode(hashcode in java)的區別

...HashMap等集合。 等於(equals)和java中的hashcode(hashcode in java)的區別 等於Java中的hashCode equals是Java中的一個方法,它的作用類似於==運算子,後者用於測試物件標識而不是物件相等性。 hashCode是一種方法,類透過該方法隱...

  • 發佈於 2020-10-19 00:40
  • 閲讀 ( 53 )

睡覺(sleep)和在java中等待(wait in java)的區別

...立執行緒的方法。這是透過擴充套件thread類或實現可執行介面來實現的。Thread類具有用於線上程上建立和執行操作的建構函式和方法。Thread類擴充套件物件類並實現可執行介面。可執行介面應該由任何一個類實現,這些類的例項...

  • 發佈於 2020-10-19 03:04
  • 閲讀 ( 47 )

打破(break)和在java中繼續(continue in java)的區別

...改迴圈的執行。 打破(break)和在java中繼續(continue in java)的區別 Java中的break vs continue break是一種迴圈控制結構,它使迴圈終止並將程式控制傳遞給迴圈的下一個語句。 continue是一個迴圈控制結構,它使迴圈立即跳到迴...

  • 發佈於 2020-10-19 05:44
  • 閲讀 ( 63 )

包裝類(wrapper class)和java中的基元型別(primitive type in java)的區別

...類用於此轉換。本文討論了Java中包裝類和基元型別之間的區別。Java中包裝類與基元型別的關鍵區別在於,包裝類用於將原語型別轉換為物件,並將物件轉換回原語型別,而基元型別是由Java程式語言提供的預定義資料型別。 目...

  • 發佈於 2020-10-19 06:27
  • 閲讀 ( 90 )

靜止的(static)和java期末考試(final in java)的區別

...final是Java中的兩個關鍵字。本文討論Java中static和final之間的區別。Java中static和final之間的關鍵區別在於static用於定義可以獨立於類的任何物件使用的類成員,而final用於宣告常量變數或無法重寫的方法或無法繼承的類。 目錄 1. ...

  • 發佈於 2020-10-19 07:48
  • 閲讀 ( 53 )

選中的(checked)和java中的未檢查異常(unchecked exception in java)的區別

...ArrayOutOfBound異常。本文討論Java中checked和unchecked異常之間的區別。Java中checked異常和unchecked異常之間的關鍵區別在於編譯器檢查checked異常,而編譯器不檢查checked異常。 目錄 1. 概述和主要區別 2. Java中的檢查異常是什麼 3. 什麼是J...

  • 發佈於 2020-10-19 08:38
  • 閲讀 ( 62 )

變數(variables)和java中的資料字面值(data literals in java)的區別

...,“5”是資料文字。本文討論Java中變數和資料文字之間的區別。Java中變數和資料字面值的主要區別在於,變數是用符號名儲存值的保留記憶體位置,而資料字面值是表示程式設計中固定值的符號。 目錄 1.概述和主要區別 2.Java...

  • 發佈於 2020-10-19 08:52
  • 閲讀 ( 48 )

春天(spring)和冬眠(hibernate)的區別

...支援程式、編譯器、程式碼庫、工具和應用程式程式設計介面(API)。它連線專案所需的所有元件。程式設計師可以使用框架在程式中使用預定義的程式碼。一些常見的基於Java的框架有Spring、Hibernate、Struts、Maven和JSF。本文討論...

  • 發佈於 2020-10-19 14:07
  • 閲讀 ( 56 )
gmmm604914
gmmm604914

0 篇文章

作家榜

  1. admin 0 文章
  2. 孫小欽 0 文章
  3. JVhby0 0 文章
  4. fvpvzrr 0 文章
  5. 0sus8kksc 0 文章
  6. zsfn1903 0 文章
  7. w91395898 0 文章
  8. SuperQueen123 0 文章

相關推薦