包機制是java中管理類的重要手段。?開發中,我們會遇到大量同名的類,通過包我們很容易對解決類重名的問題,也可以實現對類的有效管理。?包對于類,相當于,文件夾對于文件的作用。

package

我們通過package實現對類的管理,package的使用有兩個要點:

1.通常是類的第一句非注釋性語句。

2.包名:域名倒著寫即可,再加上模塊名,便于內部管理類。

【示例1package的命名舉例

com.sun.test;

com.oracle.test;

com.bjsxt.gao.test;

com.bjsxt.gao.view;

com.bjsxt.gao.view.model;

注意事項

寫項目時都要加包,不要使用默認包。

com.gaocom.gao.car,這兩個包沒有包含關系,是兩個完全獨立的包。只是邏輯上看起來后者是前者的一部分。

【示例2package的使用

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語言的核心類,如StringMathIntegerSystemThread,提供常用功能。
java.awt包含了構成抽象窗口工具集(abstract window toolkits)的多個類,這些類被用來構建和管理應用程序的圖形用戶界面(GUI)
java.net包含執行與網絡相關的操作的類。
java.io包含能提供多種輸入/輸出功能的類。
java.util包含一些實用工具類,如定義系統特性、使用與日期日歷相關的函數。

導入類import

如果我們要使用其他包的類,必須使用import導入,從而可以在本類中直接通過類名來調用。import后,便于編寫代碼,提高可維護性。

【示例3import的使用舉例

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?