Java詳細(xì)講解包的作用以及修飾符的介紹
1.包
1.包的三大作用
- 區(qū)分相同名字的類
- 當(dāng)類很多時(shí),可方便管理
- 控制訪問范圍
2.包的基本語法
package abc.www;
3.包的本質(zhì)
實(shí)際上就是創(chuàng)建不同的文件夾/目錄保存類文件
4.包的命名規(guī)則
只能包含數(shù)字,字母,下劃線,小圓點(diǎn),但不能數(shù)字開頭,不能是關(guān)鍵字或保留字
5.包的命名規(guī)范
小寫字母+小圓點(diǎn),一般是com.公司名.項(xiàng)目名.業(yè)務(wù)模塊名
6.常用的包
java.lang.* //默認(rèn)引入
java.util.* //系統(tǒng)提供的工具包,工具類,例如之前使用的Scanner
java.net.* //網(wǎng)絡(luò)包,網(wǎng)絡(luò)開發(fā)
java.awt.* // java界面開發(fā),GUI
7.注意事項(xiàng)和使用細(xì)節(jié)
- package 的作用是聲明當(dāng)前類所在的包,需要放在類的最上面,一個(gè)類中最多只有一句package。
- import指令位置在package下面,在類定義前面,可以有多句且沒有順序要求。
2.訪問修飾符
1.4種訪問修飾符的訪問范圍
訪問級(jí)別 | 訪問控制修飾符 | 同類 | 同包 | 不同包子類 | 不同包 |
---|---|---|---|---|---|
公開 | public | ? | ? | ? | ? |
受保護(hù) | protected | ? | ? | ? | ╳ |
默認(rèn) | 沒有修飾符 | ? | ? | ╳ | ╳ |
私有 | private | ? | ╳ | ╳ | ╳ |
2.使用注意事項(xiàng)
- 修飾符可以用來修飾類中的屬性,成員方法及類
- 只有默認(rèn)的和public才可以修飾類!,并且遵循上述訪問權(quán)限的特點(diǎn)
- 成員方法的訪問規(guī)則和屬性完全一樣
3.具體實(shí)例說明
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(){ //同一個(gè)類可以訪問所有修飾符修飾的屬性和方法 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(); //在同一個(gè)包類可以訪問public,protected,默認(rèn),不能訪問私有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,不能訪問默認(rèn)的和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,默認(rèn),private 修飾的屬性和方法 System.out.println(a.n1); } }
到此這篇關(guān)于Java詳細(xì)講解包的作用以及修飾符的介紹的文章就介紹到這了,更多相關(guān)Java包的作用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
深入學(xué)習(xí)java位運(yùn)算的基礎(chǔ)知識(shí)
位運(yùn)算是直接對(duì)整數(shù)在內(nèi)存中的二進(jìn)制位進(jìn)行操作嗎,位運(yùn)算即可以節(jié)約內(nèi)存,同時(shí)使程序速度更快效率更高。文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,下面我們來一起學(xué)習(xí)下吧2019-06-06Java volatile關(guān)鍵字原理剖析與實(shí)例講解
volatile是Java提供的一種輕量級(jí)的同步機(jī)制,Java?語言包含兩種內(nèi)在的同步機(jī)制:同步塊(或方法)和?volatile?變量,本文將詳細(xì)為大家總結(jié)Java volatile關(guān)鍵字,通過詳細(xì)的代碼示例給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-07-07RabbitMQ?延遲隊(duì)列實(shí)現(xiàn)訂單支付結(jié)果異步階梯性通知(實(shí)例代碼)
這篇文章主要介紹了RabbitMQ?延遲隊(duì)列實(shí)現(xiàn)訂單支付結(jié)果異步階梯性通知,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-02-02詳談cxf和axis兩種框架下的webservice客戶端開發(fā)
這篇文章主要介紹了詳談cxf和axis兩種框架下的webservice客戶端開發(fā),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08