package和import的用法


1 package 和 import
 
    2.1 package
        第一:package出現在java源文件第一行。
        第二:帶有包名怎么編譯? javac -d . xxx.java
        第三:怎么運行:java完整類名
    
    2.2 import
        import什么時候不需要?
            java.lang不需要。
            同包下不需要。
            其他一律都需要
        怎么用?
            import 完整類名
            import 包名.*
 
 
案例1:為什么要用package?和用cmd命令時該如何去編譯和運行這個包下類的命令(注意觀察包的路徑)
/*
* 1 為什么要是用package?
*   package是java包機制。包機制的作用是為了方便程序管理。
*   不同功能的類分別存放在不同的包下。(按照功能划分的,不同的軟件包具有不同的功能)
*
* 2 package怎么用?
*   package是一個關鍵字,后面加包名。例如:
*   package com.javaSe.interface
*   注意:package語句只允許出現在java源代碼的第一行
*
* 3 包名有沒有命名規范?有
*   一般都采用公司域名倒序的方式(因為公司的域名具有全球唯一性)
*   包名命名規范:
*       公司域名倒序 + 項目名 + 模塊名 + 功能名
*
* 4 對於帶有package的java程序怎么編譯?怎么運行?
*   采用之前的編譯和運行不行了
*   類名不再是:HelloWorld了
*   類名是:com.javaSe.package.HelloWorld
*   編譯:
*       javac -d . HelloWorld.java
*       解釋一下:
*           javac 負責編譯的命令
*           -d  帶包編譯
*           .   代表編譯之后生成的東西放到當前目錄下(點代表當前目錄)
*           HelloWorld.java 被編譯的java文件名
*   運行:
*       java com.javaSe.package.HelloWorld
*
* 5 關於import的使用。
*   import什么時候用:
*       A類中使用B類
*       A類和B類都在同一個包下。不需要使用import
*       A類和B類不在同一個包下。需要使用import
*       java.lang.*;這個包下的類不需要使用import導入。
*
*   import怎么用?
*       import語句只能出現在package語句之下,class聲明之上。
*       import可以使用*號的方式。
* */
// 這里是不是程序的第一行?是的,注釋不算
package com.javaSe.packege;


public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World");
    }
}

 

 

測試1:注意看包的路徑

package com.javaSe.packege;


public class Test01 {
    public static void main(String[] args) {
        //創建HelloWorld對象
        com.javaSe.packege.HelloWorld helloWorld = new HelloWorld();
        System.out.println(helloWorld);//com.javaSe.packege.HelloWorld@10f87f48


        // 包名可以省略嗎?
        // 思考:這里的包名之所以可以省略,是因為HelloWorld和Test01在同一個package下。
        HelloWorld helloWorld1 = new HelloWorld();
        System.out.println(helloWorld1);//com.javaSe.packege.HelloWorld@b4c966a
    }
}

 

 

測試2:注意看包的路徑
package com;


// 將需要的類導入。
//import com.javaSe.packege.HelloWorld;
import com.javaSe.packege.*;


public class Test02 {
    public static void main(String[] args) {
        /*
        * Error:(4, 9) java: 找不到符號
          符號:   類 HelloWorld
          位置: 類 com.Test02
        * */
        //HelloWorld helloWorld = new HelloWorld();


        /*com.javaSe.packege.HelloWorld helloWorld = new com.javaSe.packege.HelloWorld();
        System.out.println(helloWorld);// com.javaSe.packege.HelloWorld@10f87f48*/


        //注意看我上面的import,只有我把
        HelloWorld helloWorld = new HelloWorld();
        System.out.println(helloWorld);//com.javaSe.packege.HelloWorld@10f87f48
    }
}

 

 

測試3:Scanner該如何導包以及導包該有的方式

package com.javaSe.packege;


// 你寫哪種都可以
//import java.util.Scanner;
import java.util.*;


public class Test03 {
    public static void main(String[] args) {
        // 為什么要這樣寫?
        // Test03類和Scanner類不在同一個包下。
        // java.util就是Scanner類的包名。
        // java.util.Scanner s = new java.util.Scanner(System.in);


        // 但是你把Scanner的包導入到你的這個類中的話,那么你用可以不用再寫他的包名了。
        Scanner s = new Scanner(System.in);
        String str = s.next();
        System.out.println("您輸入的字符串是:" + str);


        java.lang.String name = "zhangSan";
        System.out.println("名字是:" + name);


        String userName = "liSi";
        System.out.println("用戶名是:" + userName);
    }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM