摘要:使用包這種機制是為了防止命名沖突,訪問控制,提供搜索和定位類接口枚舉和注釋等。包的作用把功能相似或相關(guān)的類或接口組織在同一個包中,方便類的查找和使用。包的導(dǎo)入為了能夠使用某一個包的成員,我們需要在程序中明確導(dǎo)入該包。
概念
包指的是一個程序的目錄。在最早的時候如果要開發(fā)一個程序,只需要定義個*.java文件,然后再該文件中編寫所需的類,編譯之后程序?qū)⒅苯颖4嬖诋?dāng)前目錄下,而利用包可以實現(xiàn)同一個程序的拆分。
為了更好地組織類,Java 提供了包機制,用于區(qū)別類名的命名空間。
Java 使用包(package)這種機制是為了防止命名沖突,訪問控制,提供搜索和定位類(class)、接口、枚舉(enumerations)和注釋(annotation)等。為這些類型提供訪問保護和命名空間管理的功能。
包語句的語法格式為:
package pkg1[.pkg2[.pkg3…]];
示例:
package net.java.util; public class hello{ public static void main(String args[]){ System.out.println("hello world"); } }
那么它的路徑應(yīng)該是 net/java/util/hello.java 這樣保存的。 package(包) 的作用是把不同的 java 程序分類保存,更方便的被其他 java 程序調(diào)用。
最好不要自己手工創(chuàng)建這些目錄,應(yīng)該使用命令自動生成,如下:
編譯: javac -d . hello.java
“-d”:表示生成目錄,根據(jù)package的定義生成。
“.” :表示保存的路徑,如果為"."表示在當(dāng)然所在的路徑下生成。
類都應(yīng)當(dāng)定義在包中,那么完整的類名就是:"包.類"。
包的作用把功能相似或相關(guān)的類或接口組織在同一個包中,方便類的查找和使用。
如同文件夾一樣,包也采用了樹形目錄的存儲方式。同一個包中的類名字是不同的,不同的包中的類的名字是可以相同的,當(dāng)同時調(diào)用兩個不同包中相同類名的類時,應(yīng)該加上包名加以區(qū)別。因此,包可以避免名字沖突。
包也限定了訪問權(quán)限,擁有包訪問權(quán)限的類才能訪問某個包中的類。
包的導(dǎo)入為了能夠使用某一個包的成員,我們需要在 Java 程序中明確導(dǎo)入該包。使用 import 語句可完成此功能。
在 java 源文件中 import 語句應(yīng)位于 package 語句之后,所有類的定義之前,可以沒有,也可以有多條,其語法格式為:
import package1[.package2…].(classname|*);
使用“包.*”通配符,表示導(dǎo)入程序里面所需要的類,而不是全部導(dǎo)入。
如果在一個包中,一個類想要使用本包中的另一個類,那么該包名可以省略。
常用系統(tǒng)包java.lang: 包含了String、object、Interger等類。從jdk1.1之后,此包會自動導(dǎo)入。
java.lang.reflect:反射包;
java.util: java的工具包,提供了大量工具類。
java.util.regex: 正則工具包。
java.text: 國際化處理包。
java.io: 進行輸入、輸出處理,以及文件處理。
java.net: 網(wǎng)絡(luò)編程開發(fā)包。
java.sql: 數(shù)據(jù)庫程序開發(fā)包。
java.applet: Applet程序開發(fā)包,已廢棄。Applet是嵌套在網(wǎng)頁上的java程序,采用繪圖的方式完成網(wǎng)頁的顯示,實現(xiàn)一些動態(tài)效果,隨著時間的發(fā)展已經(jīng)不再使用了。
java.awt、javax.swing:圖形界面開發(fā)包。主要進行單機版程序界面開發(fā)。
jdk1.0的時候推出了awt開發(fā)包,但是該包大量使用了windows api,導(dǎo)致程序缺乏可移植性。
jdk1.2的時候推出了javax.swing開發(fā)包,采用了java自己編寫的api,是一個輕量級的GUI工具包。
jar 命令在任何一個項目中肯定會存在大量的.class文件,如果將這些.class文件直接交付,會導(dǎo)致文件過多,而且程序非常沒有結(jié)果,所以在交付用戶使用之前,會使用jar命令將包中的class文件壓縮成一個文件。
生成的jar文件不能直接使用,需要將其文件路徑配置到CLASSPATH中,如果使用第三方j(luò)ar文件,也必須配置。
補充:CLASSPATH是java程序解釋類文件時所使用的加載路徑。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/77607.html
摘要:可以直接用接口名訪問。其他類也稱為外部類。汽車外部類發(fā)動機內(nèi)部類內(nèi)部類的分類內(nèi)部類分為成員內(nèi)部類與局部內(nèi)部類。我們定義內(nèi)部類時,就是一個正常定義類的過程,同樣包含各種修飾符繼承與實現(xiàn)關(guān)系等。并且日常項目的分工也是以包作為邊界。 01final關(guān)鍵字概念 * A: 概述 繼承的出現(xiàn)提高了代碼的復(fù)用性,并方便開發(fā)。但隨之也有問題,有些類在描述完之后,不想被繼承, ...
摘要:三設(shè)置壓縮包步驟創(chuàng)建構(gòu)建模塊生成發(fā)布壓縮包安裝包解壓縮后,查看包是否安裝成功包名查看包的位置包名卸載包直接從安裝的目錄下把包目錄刪除即可。安裝卸載第三方模塊第三方包名包管理工具,提供了對包的查找,下載,安裝,卸載等功能。 一. 模塊定義:每一個python文件就是一個模塊模塊名稱的命名要符合標(biāo)識符命名規(guī)則 導(dǎo)入:使用import 模塊名導(dǎo)入后,使用模塊名.的形式來訪問里面的全局變量,函...
摘要:模塊與包的導(dǎo)入一模塊導(dǎo)入定義模塊,是一個文件,以結(jié)尾,包含了對象定義和語句。使用模塊還可以避免函數(shù)名和變量名沖突。特別注意的是自定義的模塊名不應(yīng)該與系統(tǒng)內(nèi)置模塊重名。包是由一系列模塊組成的集合。模塊的導(dǎo)入使用語句。 【Python3】Python模塊與包的導(dǎo)入 一、模塊導(dǎo)入 1. 定義 Python 模塊(Module),是一個 Python 文件,以 .py 結(jié)尾,包含了 Pytho...
摘要:類類的概念在許多語言中出現(xiàn),是面向?qū)ο缶幊痰幕A(chǔ),很容易理解。抽象出不同物體的共同特征,根據(jù)相似性原則,把彼此相似的物體歸于相同的類概念,它將數(shù)據(jù)和操作進行封裝,以便將來的復(fù)用。模塊名就是文件名去掉后綴。包目錄下為首的一個文件便是。 類 類的概念在許多語言中出現(xiàn),是面向?qū)ο缶幊痰幕A(chǔ),很容易理解。抽象出不同物體的共同特征,根據(jù)相似性原則,把彼此相似的物體歸于相同的類概念, 它將數(shù)據(jù)和操...
閱讀 2590·2021-10-09 09:44
閱讀 670·2019-08-30 15:44
閱讀 3026·2019-08-29 18:46
閱讀 1164·2019-08-29 18:38
閱讀 589·2019-08-26 10:44
閱讀 2468·2019-08-23 16:07
閱讀 1148·2019-08-23 15:38
閱讀 4219·2019-08-23 14:02