java基礎課堂筆記04 - 面向物件課時5 - 包機制
158、package、import 包機制
1、java中的包機制又稱為package,java中引入package這種語法機制主要是為了方便程式的管理,不同功能的類被分門別類放到不同的軟體包當中,查詢比較方便,管理比較方便,易維護
2、定義包:
- 在java源程式的第一行編寫package語句
- package只能編寫一個語句
- 一個包對應一個目錄,目錄之間使用.間隔
package 包名[.包名...]
例:package com.study.www.test
package com.bjpowernode.javase.day11.Test01
3、包名的命名規範:
- 一般使用域名倒序 + 專案名 + 模組名 + 功能名,這種方式重名的機率較低
- 包名要求全部小寫,包名也是識別符號,遵守識別符號命名規則
4、使用了package機制之後,應該怎麼編譯?怎麼執行呢?
1)使用了package機制之後,類名不再是Test01了,而是一個帶包名的類名
-編譯原始檔:javac java原始檔[路徑] ---> 預設在原始檔相同路徑上生成 .class位元組碼檔案Test01.class【控制檯路徑與原始檔相同時路徑可以省略】
- 手動方式建立包名目錄,將Test01.class位元組碼檔案放到目錄下
-執行包名類檔案:java com.bjpowernode.javase.day11.Test01
2)另一種方式(編譯+執行)
- 編譯原始檔:
javac -d 編譯之後的存放路徑 java原始檔路徑(生成一個帶包的類檔案)
-d 用於指定帶包類生成的路徑,並生成包名目錄,省缺則在原始檔路徑下生成位元組碼檔案,需手動放到包名目錄下才能執行
例:將F:\Hello.java檔案編譯之後放到c:\下
javac -d c:\ F:\Hello.java
javac -d . *.java
-將制臺當當前路徑中的*.java所有原始檔編譯之後存放到當前目錄下
- 執行類檔案:
JVM的類載入器ClassLoader預設從控制檯當前目錄下載入類,確保當前路徑與com.類同,執行這個帶包類javacom.bjpowernode.javase.day11.Test01
5、例項化類:
- 例項化同包下的類,包名可以省略
- 例項化非同包下的類,包名不能省略
6、匯入包機制:相當於將需要使用的類放到了當前軟體包下
- import語句用來手動匯入其它類,同一個包下的類不需要匯入
- import語句必須編寫在package語句之下,class語句之上
語法格式:
import 類名; //import 包名.位元組碼檔名;
import 包名.*;
7、java.lang.*
- java.lang.* 類不需要手動引入,系統自動引入
- lang:language語言包,是java語言的核心類,不需要手動引入
如常見類:String、System、Math.random()
159、訪問控制權限修飾符:public ptotected default private
1、訪問控制權限修飾符來控制元素的訪問範圍
2、訪問控制權限修飾符可以修飾類、變數、方法、常量...
3、訪問控制權限修飾符包括:
public 表示公開的,在任何位置都可以訪問
protected 同包,子類
省缺 同包
private 表示私有,只能在本類中訪問
4、當某個資料只希望子類使用,使用protected修飾
5、修飾符的範圍:
private < default < protected <public
6、類只能使用public和省缺的方式進行修飾【內部類除外】