摘要:訪問(wèn)控制或隱藏具體實(shí)現(xiàn)與最初的實(shí)現(xiàn)并不恰當(dāng)有關(guān)包類庫(kù)是一組類文件,其中每個(gè)文件都有一個(gè)類,以及任意數(shù)量的非類每個(gè)文件都有一個(gè)構(gòu)件,如果希望這些構(gòu)建從屬于同一個(gè)群組,就可以使用關(guān)鍵字如果使用關(guān)鍵字,它必須是除注釋以外的第一句程序代碼和將單一的
訪問(wèn)控制(或隱藏具體實(shí)現(xiàn))與“最初的實(shí)現(xiàn)并不恰當(dāng)”有關(guān).
1.包類庫(kù)是一組類文件,其中每個(gè)文件都有一個(gè)public類,以及任意數(shù)量的非public類.
每個(gè)文件都有一個(gè)構(gòu)件,如果希望這些構(gòu)建從屬于同一個(gè)群組,就可以使用package關(guān)鍵字.
如果使用package關(guān)鍵字,它必須是除注釋以外的第一句程序代碼.
package和import:將單一的全局名字分隔開,解決命名沖突問(wèn)題.
一個(gè)包從未真正將被打包的東西包裝成單一的文件,并且一個(gè)包可以由許多.class文件構(gòu)成,一種合乎邏輯的做法是將特定包的所有.class文件都置于一個(gè)目錄下(利用操作系統(tǒng)的層次化的文件結(jié)構(gòu)來(lái)解決混亂問(wèn)題(一種方式)).
Java解釋器的運(yùn)行過(guò)程:找到環(huán)境變量CLASSPATH,其目錄作為查找.class文件的根目錄;從根目錄開始,解釋器獲取包的名稱并將.替換成路徑符;連接路徑.
JDK2即使未設(shè)立CLASSPATH,也可以編譯并運(yùn)行基本的Java程序.
同一程序中有沖突的名字,必須指定全名.
靜態(tài)導(dǎo)入 import static.
Java沒(méi)有C的條件編譯功能(不更改任何程序代碼,就能切換開關(guān)并產(chǎn)生不同的行為).
調(diào)試功能在開發(fā)過(guò)程中是開啟的,而在發(fā)布的產(chǎn)品中式禁用的.
2.Java訪問(wèn)權(quán)限修飾詞默認(rèn)包:如果沒(méi)有給類設(shè)定包名稱,則該類隸屬于該目錄的默認(rèn)包之中.
包訪問(wèn)權(quán)限:默認(rèn)訪問(wèn)權(quán)限(friendly).
public:接口訪問(wèn)權(quán)限.
private:除該類之外,其他任何類都無(wú)法訪問(wèn)(典型例子:構(gòu)造器私有化).
protected:繼承訪問(wèn)權(quán)限.
獲得某成員的訪問(wèn)權(quán)的途徑:1.使該成員成為public;2.不加修飾符并置于同一個(gè)包中;3.使用繼承;4.提供訪問(wèn)器(accessor)和變異器(mutator)方法(get/set方法).
3.接口和實(shí)現(xiàn)訪問(wèn)權(quán)限的控制常被成為是 具體實(shí)現(xiàn)的隱藏.
把數(shù)據(jù)和方法包裝進(jìn)類中,以及具體實(shí)現(xiàn)的隱藏,常共同被稱作是 封裝.其結(jié)果是一個(gè)同時(shí)帶有特征和行為的數(shù)據(jù)類型.
訪問(wèn)權(quán)限控制將權(quán)限的邊界劃在了數(shù)據(jù)類型的內(nèi)部,原因:1.要設(shè)定客戶端程序員可以使用和不可以使用的界限;2.將接口和具體實(shí)現(xiàn)進(jìn)行分離.
類瀏覽器:一種以非常有用的方式來(lái)查閱所有可用的類,并顯示出可用成員的工具.===========
4.類的訪問(wèn)權(quán)限每個(gè)編譯單元(文件)都只能有一個(gè)public類.
public類的名稱必須完全與含有該編譯單元的文件名相匹配,包括大小寫.
編譯單元內(nèi)完全不帶public類也是可能的.
類既不可以是private,也不可以是protected,只能是包訪問(wèn)權(quán)限或者public.
如果不希望其他任何人對(duì)該類擁有訪問(wèn)權(quán)限,可以把所有的構(gòu)造器都制定為private,從而阻止任何人創(chuàng)建該類的對(duì)象,但是有一個(gè)例外,就是在該類的static成員內(nèi)部可以創(chuàng)建.
如果一個(gè)包訪問(wèn)權(quán)限的類的某個(gè)static成員是public的話,則客戶端程序員仍舊可以調(diào)用該static成員,盡管他們并不能生成該類的對(duì)象.
END
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/71539.html
摘要:包命名規(guī)范使用小寫字母。包訪問(wèn)權(quán)限為把類聚在一個(gè)包中的做法提供了意義和理由。接口訪問(wèn)權(quán)限使用關(guān)鍵字,意味著被它修飾的成員對(duì)所有類可見。繼承訪問(wèn)權(quán)限基類的創(chuàng)建者希望某些特定成員,把它的訪問(wèn)權(quán)限賦予派生類也不是所有類。 點(diǎn)擊進(jìn)入我的博客 6.1包:庫(kù)單元 import java.util.ArrayList; import java.util.*; 當(dāng)編寫一個(gè)Java源代碼文件(編譯單...
摘要:細(xì)粒度權(quán)限管理就是數(shù)據(jù)級(jí)別的權(quán)限管理。張三只能查看行政部的用戶信息,李四只能查看開發(fā)部門的用戶信息。比如通過(guò)的攔截器實(shí)現(xiàn)授權(quán)。 前言 本文主要講解的知識(shí)點(diǎn)有以下: 權(quán)限管理的基礎(chǔ)知識(shí) 模型 粗粒度和細(xì)粒度的概念 回顧URL攔截的實(shí)現(xiàn) Shiro的介紹與簡(jiǎn)單入門 一、Shiro基礎(chǔ)知識(shí) 在學(xué)習(xí)Shiro這個(gè)框架之前,首先我們要先了解Shiro需要的基礎(chǔ)知識(shí):權(quán)限管理 1.1什...
摘要:本文將分兩個(gè)部分介紹的訪問(wèn)控制,一個(gè)是類中成員的訪問(wèn)控制,另一個(gè)是類本身的訪問(wèn)控制。成員訪問(wèn)控制中共有個(gè)訪問(wèn)控制符有四種訪問(wèn)權(quán)限默認(rèn)。繼承訪問(wèn)權(quán)限,使用關(guān)鍵字進(jìn)行權(quán)限控制。 本文將分兩個(gè)部分介紹Java的訪問(wèn)控制,一個(gè)是類中成員的訪問(wèn)控制,另一個(gè)是類本身的訪問(wèn)控制。 成員訪問(wèn)控制 Java中共有3個(gè)訪問(wèn)控制符:private,protected,public, 有四種訪問(wèn)權(quán)限priva...
閱讀 1337·2023-04-25 15:21
閱讀 2670·2021-11-24 10:23
閱讀 3397·2021-10-11 10:59
閱讀 3242·2021-09-03 10:28
閱讀 1730·2019-08-26 13:45
閱讀 2319·2019-08-26 12:11
閱讀 920·2019-08-26 12:00
閱讀 1705·2019-08-26 10:44