Java程式設計裡的包及訪問許可權
在 Java 裡,可以將一個大型專案中的類分別獨立出來,分門別類地存到檔案裡, 再將這些檔案一起編譯執行,如此的程式程式碼將更易於維護。下面內容由小編為大家介紹Java程式設計裡的包及訪問許可權,供大家參考!
一、包(package)的基本概念
當一個大型程式由數個不同的組別或人員開發共同開發時,用到相同的類名稱是 很有可能的事。如果這種情況發生,還要確保程式可以正確執行,就必須通過 package 關鍵字來幫忙了。
package 是在使用多個類或介面時,為了避免名稱重複而採用的一種措施。那麼 具體應該怎麼使用呢?在類或介面的最上面一行加上 package 的宣告就可以了。
【 格式1 package 的宣告】
package package 名稱 ;
經過 package 的宣告之後,在同一檔案內的介面或類都被納入相同的 package 中。 程式 TestPackage1 是使用 package 的一個範例,如下所示:
範例:
01 package
02 class Person
03 {
04 public String talk()
05 {
06 return "Person —— >> talk()"
07 }
08 }
09
10 class TestPackage1
11 {
12 public static void main(String[] args)
13 {
14 tln(new Person()())
15 }
16 }
在 中,除了第 1 行的加的 package 宣告語句之外,其餘的程式都是讀者見過的。由於第 1 行聲明瞭一個 的包,所以就相當於將 Person 類、TestPackage1 類放入了 資料夾之下。現在來看一下上面的程式是 如何編譯的:
javac -d .
“-d”:表示生成目錄
“.”:表示在當前目錄下生成
這樣就會在當前目錄下生成一個 demo 的資料夾,在 demo 資料夾下又會生成一個 java 資料夾,在此資料夾下會有編譯好的 s 和 s,編譯好之 後用下面的語法來執行它:
java Package1
輸出結果:
Person —— >> talk()
二、import 語句的使用
到目前為止,所介紹的類都是屬於同一個 package 的,因此在程式程式碼的編寫上 並不需要做修改。但如果幾個類分別屬於不同的' package 時,在某個類要訪問到其它 類的成員時,則必須做下列的修改:
若某個類需要被訪問時,則必須把這個類公開出來,也就是說,此類必須宣告成 public。
若要訪問不同 package 內某個 public 類的成員時,在程式程式碼內必須明確地指明 “被訪問 package 的名稱.類名稱”。
【 格式2 package 的匯入】
import package 名稱.類名稱 ;
通過 import 命令,可將某個 package 內的整個類匯入,因此後續的程式程式碼便不 用再寫上被訪問package 的名稱了。
舉一個範例來說明 import 命令的用法。此範例與 TestPackage1 類似,只是將兩個 類分別放在不同的包中:
圖1 包的匯入
範例:
01 package .a
02
03 public class Person
04 {
05 public String talk()
06 {
07 return "Person —— >> talk()"
08 }
09 }
程式說明:
程式第 1 行宣告一個 .a 的包,將 Person 類放入此包之中。
範例:
01 package .b
02 import on
03
04 class TestPackage2
05 {
06 public static void main(String[] args)
07 {
08 tln(new Person()())
09 }
10 }
輸出結果:
Person —— >> talk()
程式說明:
1、 程式第 1 行宣告一個 .b 包,將 TestPackage2 類放入此包之中。
2、 程式第 2 行使用 import 語句,將 .a 包中的 Person 類匯入到此包之中。
注意: 可以將第 2 行的 import on 改成 import .a.*,表示導 入包中的所有類,另外需要告訴讀者的是,在 java 中有這樣的規定:匯入全部 類或是匯入指定的類,對於程式的效能是沒有影響的,所以在開發中可以直接寫 匯入全部類會比較方便。
另外, 程式也可以寫成如下形式:
範例:
01 package .b
02
03 class TestPackage3
04 {
05 public static void main(String[] args)
06 {
07 tln(new on()())
08 }
09 }
可以發現在 程式中並沒有使用 import 語句,但是在程式第 7 行 使用 Person 類的時候使用了“包名.類名”的方式使用了 Person 類,所以在程式中也 可以使用此方法來使用非本類所在的包中的類。
三、JDK 中常見的包
SUN 公司在 JDK 中為程式開發者提供了各種實用類,這些類按功能不同分別被 放入了不同的包中,供開發者使用,下面簡要介紹其中最常用的幾個包:
1、 — 包含一些 Java 語言的核心類,如 String、Math、Integer、System 和 Thread,提供常用功能。在 包中還有一個子包:ect 用於實現 java 類的反射機制。
2、 — 包含了構成抽象視窗工具集(abstract window toolkits)的多個類, 這些類被用來構建和管理應用程式的圖形使用者介面(GUI)。
3、 g — 此包用於建立圖形使用者介面,此包中的元件相對於 包而言是輕量級元件。
4、 et — 包含 applet 執行所需的一些類。
5、 — 包含執行與網路相關的操作的類。
6、 — 包含能提供多種輸入/輸出功能的類。
7、 — 包含一些實用工具類,如定義系統特性、與日期日曆相關的函式。
注意:java1.2 以後的版本中, 這個包會自動被匯入,對於其中的類,不 需要使用 import 語句來做匯入了,如前面經常使用的 System 類。
-
Java中final關鍵字用法的講解
1.finalvariablefinalvariable就是一個常量,一旦被初始化就不可以被改變。classTest1{finaldoublePI=3.14;//常量的名稱最好大寫publicTest1(){PI=3.14;}voidtest(){tln("PIis:"+PI);}publicstaticvoidmain(String[]args){Test1t=newTest1();();}}輸出:PIis:3.14...
-
springmvc如何設定多檢視器呢
導語:springmvc如何設定多檢視器呢?下面是小編給大家整體的程式碼,大家可以參考練習,更多詳情請關注應屆畢業生考試網。在做頁面靜態化處理時,有時候我們需要兩種或者兩種以上的檢視解析方式,比如jsp,html,json,jstl,ftl等等,顯然預設的springmvc只配置一種檢視解析方...
-
全國計算機等級《二級JAVA》命題預測試卷
以下是本站小編帶來的全國計算機等級《二級JAVA》命題預測試卷,歡迎學習!更多內容請關注應屆畢業生考試網!1、軟體生命週期是指()。A.軟體產品從提出、實現、使用維護到停止使用退役的過程B.軟體從需求分析、設計、實現到測試完成的過程,C.軟體的開發過程D.軟體...
-
全面理解java中的異常處理機制精選
一、java異常總結:異常就是程式執行時出現不正常執行情況1.異常由來:通過java的類的形式對現實事物中問題的描述,並封住成了物件其實就是java對不正常情況描述後的物件體現2.對於問題的劃分有兩種:一種是嚴重的問題,一種是非嚴重的問題對於嚴重的,java通過Error類來...