包機制是java中管理類的重要手段。?開發中,我們會遇到大量同名的類,通過包我們很容易對解決類重名的問題,也可以實現對類的有效管理。?包對于類,相當于,文件夾對于文件的作用。
package
我們通過package實現對類的管理,package的使用有兩個要點:
1.通常是類的第一句非注釋性語句。
2.包名:域名倒著寫即可,再加上模塊名,便于內部管理類。
【示例1】package的命名舉例
com.sun.test; com.oracle.test; com.bjsxt.gao.test; com.bjsxt.gao.view; com.bjsxt.gao.view.model; |
注意事項 寫項目時都要加包,不要使用默認包。 com.gao和com.gao.car,這兩個包沒有包含關系,是兩個完全獨立的包。只是邏輯上看起來后者是前者的一部分。 |
【示例2】package的使用
package com.bjsxt; public class Test{ ??? public static void main(String [] args){ ?????? System.out.println("helloworld"); ??? } } |
·在eclipse項目中新建包
?在src目錄上單擊右鍵,選擇new->package
在package窗口上輸入包名即可
接下來,我們就可以在包上單擊右鍵,新建類啦!
JDK中的主要包
Java中的常用包 | 說明 |
java.lang | 包含一些Java語言的核心類,如String、Math、Integer、System和Thread,提供常用功能。 |
java.awt | 包含了構成抽象窗口工具集(abstract window toolkits)的多個類,這些類被用來構建和管理應用程序的圖形用戶界面(GUI)。 |
java.net | 包含執行與網絡相關的操作的類。 |
java.io | 包含能提供多種輸入/輸出功能的類。 |
java.util | 包含一些實用工具類,如定義系統特性、使用與日期日歷相關的函數。 |
導入類import
如果我們要使用其他包的類,必須使用import導入,從而可以在本類中直接通過類名來調用。import后,便于編寫代碼,提高可維護性。
【示例3】import的使用舉例
import? java.util.Date; ? import? ? java.util.*;?? //導入該包下所有的類。會降低編譯速度,但不會降低運行速度。 |
注意要點 1.Java會默認導入java.lang包下所有的類,因此這些類我們可以直接使用。 2.如果導入兩個同名的類,只能用包名+類名來顯示調用相關類:java.util.Date date? = new? ? java.util.Date(); |
? 【示例4】導入同名類的處理
import?? java.sql.Date; import?? java.util.*; public?class?? Test{ ????public?static?void?? main(String[] args) { ???????java.util.Date? now =?new?java.util.Date(); ?????? System.out.println(now); ??? } } |
靜態導入
靜態導入(static? import)是在JDK1.5新增加的功能,其作用是用于導入指定類的靜態屬性,這樣我們可以直接使用靜態屬性。?【示例5】靜態導入的使用
package com.bjsxt; ?//以下兩種靜態導入的方式二選一即可 import static java.lang.Math.*;//導入Math類的所有靜態屬性 import static java.lang.Math.PI;//導入Math類的PI屬性 public class Test{ ??? public static void main(String [] args){ ?????? System.out.println(PI); ?????? System.out.println(random()); ??? } } |
?示例5?運行效果圖
「全棧Java筆記」是一部能幫大家從零到一成長為全棧Java工程師系列筆記。筆者江湖人稱 Mr. G,10年Java研發經驗,曾在神州數碼、航天院某所研發中心從事軟件設計及研發工作,從小白逐漸做到工程師、高級工程師、架構師。精通Java平臺軟件開發,精通JAVAEE,熟悉各種流行開發框架。
筆記包含從淺入深的六大部分:
A-Java入門階段
B-數據庫從入門到精通
C-手刃移動前端和Web前端
D-J2EE從了解到實戰
E-Java高級框架精解
F-Linux和Hadoop?
轉載于:https://blog.51cto.com/javanew/1942391