Java詳細講解包的作用以及修飾符的介紹
1.包
1.包的三大作用
- 區(qū)分相同名字的類
- 當類很多時,可方便管理
- 控制訪問范圍
2.包的基本語法
package abc.www;
3.包的本質(zhì)
實際上就是創(chuàng)建不同的文件夾/目錄保存類文件
4.包的命名規(guī)則
只能包含數(shù)字,字母,下劃線,小圓點,但不能數(shù)字開頭,不能是關(guān)鍵字或保留字
5.包的命名規(guī)范
小寫字母+小圓點,一般是com.公司名.項目名.業(yè)務(wù)模塊名
6.常用的包
java.lang.* //默認引入
java.util.* //系統(tǒng)提供的工具包,工具類,例如之前使用的Scanner
java.net.* //網(wǎng)絡(luò)包,網(wǎng)絡(luò)開發(fā)
java.awt.* // java界面開發(fā),GUI
7.注意事項和使用細節(jié)
- package 的作用是聲明當前類所在的包,需要放在類的最上面,一個類中最多只有一句package。
- import指令位置在package下面,在類定義前面,可以有多句且沒有順序要求。
2.訪問修飾符
1.4種訪問修飾符的訪問范圍
訪問級別 | 訪問控制修飾符 | 同類 | 同包 | 不同包子類 | 不同包 |
---|---|---|---|---|---|
公開 | public | ? | ? | ? | ? |
受保護 | protected | ? | ? | ? | ╳ |
默認 | 沒有修飾符 | ? | ? | ╳ | ╳ |
私有 | private | ? | ╳ | ╳ | ╳ |
2.使用注意事項
- 修飾符可以用來修飾類中的屬性,成員方法及類
- 只有默認的和public才可以修飾類!,并且遵循上述訪問權(quán)限的特點
- 成員方法的訪問規(guī)則和屬性完全一樣
3.具體實例說明
1. 同類
package com.wang.modifier1; public class A { public int n1 = 100; protected int n2 = 200; int n3 = 300; private int n4 = 400; public void m1(){ //同一個類可以訪問所有修飾符修飾的屬性和方法 System.out.println("n1="+n1+"n2="+n2+"n3="+n3+"n4="+n4); } }
2. 同包
package com.wang.modifier1; public class B { public void say() { A a = new A(); //在同一個包類可以訪問public,protected,默認,不能訪問私有private System.out.println("a1=" + a.n1 + "a2=" + a.n2 + "n3=" + a.n3); } }
3. 不同包子類
package com.wang.extend; public class Student {//父類 public int age; public String name; private Double score; String hobby; }
package com.wang.modifier1;//不同包 import com.wang.extend.Student; public class B extends Student {//子類 public void say() { //不同包子類可以訪問父類的public,protected,不能訪問默認的和private System.out.println(name + age); } }
4. 不同包
package com.wang.modifier2; import com.wang.modifier1.A; public class Test { public static void main(String[] args) { A a = new A(); //不同包下,可以訪問 public 修飾的屬性和方法 //但不能訪問 protected,默認,private 修飾的屬性和方法 System.out.println(a.n1); } }
到此這篇關(guān)于Java詳細講解包的作用以及修飾符的介紹的文章就介紹到這了,更多相關(guān)Java包的作用內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java volatile關(guān)鍵字原理剖析與實例講解
volatile是Java提供的一種輕量級的同步機制,Java?語言包含兩種內(nèi)在的同步機制:同步塊(或方法)和?volatile?變量,本文將詳細為大家總結(jié)Java volatile關(guān)鍵字,通過詳細的代碼示例給大家介紹的非常詳細,需要的朋友可以參考下2023-07-07RabbitMQ?延遲隊列實現(xiàn)訂單支付結(jié)果異步階梯性通知(實例代碼)
這篇文章主要介紹了RabbitMQ?延遲隊列實現(xiàn)訂單支付結(jié)果異步階梯性通知,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-02-02詳談cxf和axis兩種框架下的webservice客戶端開發(fā)
這篇文章主要介紹了詳談cxf和axis兩種框架下的webservice客戶端開發(fā),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-08-08