亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java訪問(wèn)控制符原理及具體用法解析

 更新時(shí)間:2020年11月02日 15:00:35   作者:愛(ài)寫(xiě)代碼的基  
這篇文章主要介紹了Java訪問(wèn)控制符原理及具體用法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

Java包中的相關(guān)概念

包的概念

  Java中的包類(lèi)似于操作系統(tǒng)中的文件夾,將具有類(lèi)似功能的類(lèi)或者相同的類(lèi)放在相同的包里面,便于組織與管理

包的作用

  1.一是開(kāi)發(fā)過(guò)程中避免類(lèi)名重復(fù)問(wèn)題;

  2.二是對(duì)代碼整理歸類(lèi),將功能相近的類(lèi)放到一個(gè)包中管理;

  3.三是限定訪問(wèn)權(quán)限(default)就是包訪問(wèn)權(quán)限。

簡(jiǎn)述調(diào)用某個(gè)包中的類(lèi)的三種方式

  1>使用一個(gè)類(lèi)的全名:即包名+類(lèi)名

    注意:在包中,所有類(lèi)對(duì)真正名字將是包名+類(lèi)名的組合,所以在運(yùn)行的時(shí)候要將包層給寫(xiě)上,不能直接寫(xiě)類(lèi)名。

  2>使用import語(yǔ)句導(dǎo)入一個(gè)包中的所有的類(lèi)。

  3>使用import語(yǔ)句導(dǎo)入一個(gè)包中的特定的類(lèi)。

Java中訪問(wèn)控制符的具體用法

為什么需要控制對(duì)成員的訪問(wèn)?

  第一個(gè)原因是防止程序員接觸他們不該接觸的東西---通常是內(nèi)部數(shù)據(jù)類(lèi)型的設(shè)計(jì)思想。

  進(jìn)行訪問(wèn)控制的第二個(gè)原因是允許庫(kù)設(shè)計(jì)人員修改內(nèi)部結(jié)構(gòu),不用擔(dān)心它會(huì)對(duì)客戶程序員造成什么影響。Java的訪問(wèn)控制級(jí)別分類(lèi)

  1.類(lèi)訪問(wèn)控制級(jí)別

  •  public
  •  default(默認(rèn)的,什么都不用寫(xiě),包內(nèi)訪問(wèn)控制符)

  2.對(duì)象訪問(wèn)控制級(jí)別

  •  public:它修飾的成員沒(méi)有限制,任何包中的任何類(lèi)都能訪問(wèn)。
  •  protect:它修飾的只能被同一個(gè)包中的類(lèi)訪問(wèn),或者不同包中的子類(lèi)訪問(wèn)。
  •  default:只能被同一個(gè)包中的類(lèi)訪問(wèn),包括同一個(gè)包中的子類(lèi)。
  •  private:只能被同一個(gè)類(lèi)中的方法訪問(wèn)。

訪問(wèn)權(quán)限

訪問(wèn)權(quán)限 同一個(gè)類(lèi)內(nèi)部 同一個(gè)包內(nèi)部 不同包中的子類(lèi) 不同包的非子類(lèi)
public
protected ×
default × ×
private × × ×

  總結(jié):

    1>在一個(gè)類(lèi)的內(nèi)部,訪問(wèn)控制符是透明的,失效的

    2>在同一個(gè)包的內(nèi)部,只有private有成員不能進(jìn)行訪問(wèn)

    3>在不同包存在繼承關(guān)系的兩個(gè)類(lèi)之間,只有public成員和protected成員可以進(jìn)行訪問(wèn)

    4>在不同包之間,只有共有成員可以進(jìn)行訪問(wèn)

代碼演示

  (1)在一個(gè)類(lèi)的內(nèi)部,所有的成員彼此之間都可以進(jìn)行相互訪問(wèn),訪問(wèn)控制符是透明的,失效的,共有的可以調(diào)用私有的,私有的可以調(diào)用共有的。

package com.vg.demo01;

public class TestAccessModifier {
	public void test1(){
		System.out.println("我是public");
	}
	protected void test2(){
		System.out.println("我是protected");
	}
	void test3(){
		System.out.println("我是default");
	}
	private void test4(){
		System.out.println("我是private");
	}
	public static void main(String[] args) {
		TestAccessModifier t=new TestAccessModifier();
		t.test1();
		t.test2();
		t.test3();
		t.test4();
}
}

我是public
我是protected
我是default
我是private

  (2)在同包不同類(lèi)之間,只有其私有成員不可以通過(guò)類(lèi)對(duì)象名的方式進(jìn)行訪問(wèn),共有成員和保護(hù)型的成員都可以通過(guò)這種方式進(jìn)行訪問(wèn). 簡(jiǎn)言之:在同一個(gè)包的內(nèi)部,只有其私有成員不能夠進(jìn)行訪問(wèn)

package com.vg.demo01;
//private是不能在同包的子類(lèi)中起作用的。
public class TestAccessModifierSon extends TestAccessModifier{
	
	public static void main(String[] args ) {
		TestAccessModifierSon s = new TestAccessModifierSon();
		s.test1();
		s.test2();
		s.test3();
	}
	
}

我是public
我是protected
我是default

package com.vg.demo01;
//非子類(lèi),在同一個(gè)包中,沒(méi)有繼承父類(lèi),即不是它的子類(lèi),private同樣不能發(fā)揮作用
public class TestAccessModifierNotSon {
	
	public static void main(String[] args ) {
		TestAccessModifierSon s = new TestAccessModifierSon();
		s.test1();
		s.test2();
		s.test3();
	}
}

我是public
我是protected
我是default

  (3)在不同包存在繼承關(guān)系的兩個(gè)類(lèi)之間,只有共有類(lèi)的共有成員和共有類(lèi)的保護(hù)型成員才可以被另外一個(gè)包中的子類(lèi)進(jìn)行訪問(wèn),但是在一個(gè)子類(lèi)的外部,只有共有類(lèi)的共有成員才可以被直接的訪問(wèn).

package com.vg.demo02;

import com.vg.demo01.*;
//在不同的包中,類(lèi)的子類(lèi)只有public、protected這倆個(gè)可以產(chǎn)生效果
public class TestAccessModifierOtherSon extends TestAccessModifier{

	public static void main(String[] args) {
		TestAccessModifierOtherSon th = 
				new TestAccessModifierOtherSon();
		th.test1();
		th.test2();

	}

}

我是public
我是protected

  (4)在不同包無(wú)任何關(guān)系的兩個(gè)類(lèi)之間,只有共有類(lèi)的共有成員才可以被另外一個(gè)包中的類(lèi)進(jìn)行訪問(wèn).

package com.vg.demo02;

import com.vg.demo01.TestAccessModifier;

public class TestAccessModifierOtherNotSon {
	public static void main(String[] args) {
		TestAccessModifier t = new TestAccessModifier();
		t.test1();
	}
}

我是public

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 淺談Java 將圖片打包到j(luò)ar中的路徑問(wèn)題

    淺談Java 將圖片打包到j(luò)ar中的路徑問(wèn)題

    下面小編就為大家分享一篇淺談Java 將圖片打包到j(luò)ar中的路徑問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-02-02
  • Java8新特性之線程安全日期類(lèi)

    Java8新特性之線程安全日期類(lèi)

    這篇文章主要介紹了Java8新特性之線程安全日期類(lèi),文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)java的小伙伴們有一定的幫助,需要的朋友可以參考下
    2021-04-04
  • Java-ElementUi中的row-class-name使用

    Java-ElementUi中的row-class-name使用

    這篇文章主要介紹了Java-ElementUi中的row-class-name使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • 淺析Java中SimpleDateFormat為什么是線程不安全的

    淺析Java中SimpleDateFormat為什么是線程不安全的

    SimpleDateFormat是Java中用于日期時(shí)間格式化的一個(gè)類(lèi),它提供了對(duì)日期的解析和格式化能力,本文主要來(lái)和大家一起探討一下SimpleDateFormat為什么是線程不安全的,感興趣的可以了解下
    2024-02-02
  • 教你使用Java實(shí)現(xiàn)掃雷小游戲(最新完整版)

    教你使用Java實(shí)現(xiàn)掃雷小游戲(最新完整版)

    本文給大家介紹使用Java實(shí)現(xiàn)掃雷小游戲,本程序封裝了五個(gè)類(lèi),分別是主類(lèi)GameWin類(lèi),繪制底層地圖和繪制頂層地圖的類(lèi)MapBottom類(lèi)和MapTop類(lèi),繪制底層數(shù)字的類(lèi)BottomNum類(lèi),以及初始化地雷的BottomRay類(lèi)和工具GameUtil類(lèi),用于存靜態(tài)參數(shù)和方法,感興趣的朋友一起看看吧
    2022-05-05
  • GC調(diào)優(yōu)實(shí)戰(zhàn)之高分配速率High?Allocation?Rate

    GC調(diào)優(yōu)實(shí)戰(zhàn)之高分配速率High?Allocation?Rate

    這篇文章主要為大家介紹了GC調(diào)優(yōu)之高分配速率High?Allocation?Rate的實(shí)戰(zhàn)示例分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2022-01-01
  • 淺析Java IO相關(guān)知識(shí)點(diǎn)

    淺析Java IO相關(guān)知識(shí)點(diǎn)

    本篇文章給大家分享了關(guān)于java io的一些相關(guān)知識(shí)點(diǎn)以及相關(guān)內(nèi)容,對(duì)此有需要的朋友可以學(xué)習(xí)參考下。
    2018-05-05
  • Intellij IDEA配置Jetty的方法示例

    Intellij IDEA配置Jetty的方法示例

    這篇文章主要介紹了Intellij IDEA配置Jetty的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-10-10
  • springboot打包jar中沒(méi)有主清單屬性問(wèn)題

    springboot打包jar中沒(méi)有主清單屬性問(wèn)題

    這篇文章主要介紹了springboot打包jar中沒(méi)有主清單屬性問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • 實(shí)例分析Java單線程與多線程

    實(shí)例分析Java單線程與多線程

    本篇文章通過(guò)代碼實(shí)例給大家詳細(xì)講述了Java單線程與多線程的相關(guān)原理和知識(shí)點(diǎn)總結(jié),需要的朋友可以學(xué)習(xí)下。
    2018-02-02

最新評(píng)論