java 修饰符作用_Java关键字修饰符的作用范围
修飾符
類
成員訪問
構(gòu)造方法
成員變量
局部變量
abstract(抽象的)
√
√
-
-
-
static (靜態(tài)的)
-
√
-
√
-
public(公共的)
√
√
√
√
-
protected(受保護(hù)的)
√
√
√
-
private(私有的)
-
√
√
√
-
synchronized(同步的)
-
√
-
-
-
native(本地的)
-
√
-
-
-
transient(暫時(shí)的)
-
-
-
√
-
volatie(易失的)
-
-
-
√
-
final(不要改變的)
√
√
-
√
√
類 修飾符
Public
可以從其他類中訪問
Abstract
本類不能被實(shí)例化
Final
不能再聲明子類
構(gòu)造函數(shù)修飾符
Public
可以從所有的類中訪問
Protected
只能從自己的類和它的子類中訪問
Private
只能在本類中訪問
域/成員變量修飾符
Public
可以從所有的類中訪問
Protected
只能從本類和它的子類中訪問
Private
只能從本類中訪問它
Static
對(duì)該類的所有實(shí)例只能有一個(gè)域值存在
transient
不是一個(gè)對(duì)象持久狀態(tài)的一部份
Volatile
可以被異步的線程所修改
final
必須對(duì)它賦予初值并且不能修改它
局部變量 修飾符
final
必須對(duì)它賦予初值并且不能修改它
方法修飾符
Public
可以從所有的類中訪問它
Protected
只能從本類及其子類中訪問它
Private
只能從本類中訪問它
abstract
沒有方法體,屬于一個(gè)抽象類
final
子類不能覆蓋它
static
被綁定于類本身而不是類的實(shí)例
native
該方法由其他編程語言實(shí)現(xiàn)
asnchronized
在一個(gè)線程調(diào)用它之前必須先給它加
類的修飾符整合
一.類
類的修飾符:
Public:可以在其他任何類中使用,默認(rèn)為統(tǒng)一包下的任意類。
Abstract:抽象類,不能被實(shí)例化,可以包含抽象方法,抽象方法沒有被實(shí)現(xiàn),無具體功能,只能衍生子類。
Final:不能被繼承。
二.變量
變量修飾符:
一個(gè)類的成員變量的聲明必須在類體中,而不能在方法中,方法中聲明的是局部變量。
可訪問修飾符:
static:類變量:一個(gè)類所擁有的變量,不是類的每個(gè)實(shí)例有的變量。類變量是指不管類創(chuàng)建了多少對(duì)象,系統(tǒng)僅在第一次調(diào)用類的時(shí)候?yàn)轭愖兞糠峙鋬?nèi)存,所有對(duì)象共享該類的類變量,因此可以通過類本身或者某個(gè)對(duì)象來訪問類變量。
final:常量。
volatile:聲明一個(gè)可能同時(shí)被并存運(yùn)行的幾個(gè)線程所控制和修改的變量。
實(shí)例變量:和類變量對(duì)應(yīng),即每個(gè)對(duì)象都擁有各自獨(dú)立的實(shí)例變量。
三.方法:(和變量對(duì)象分為實(shí)例方法和類方法,并用有無static修飾區(qū)別)
類方法:使用static關(guān)鍵字說明的方法
第一次調(diào)用含類方法的類是,系統(tǒng)只為該類創(chuàng)建一個(gè)版本,這個(gè)版本被該類和該類的所有實(shí)例共享。
類方法只能操作類變量,不能訪問實(shí)例變量。類方法可以在類中被調(diào)用,不必創(chuàng)建實(shí)例來調(diào)用,當(dāng)然也可以通過對(duì)象來調(diào)用。
實(shí)例方法:實(shí)例方法可以對(duì)當(dāng)前對(duì)象的實(shí)例變量操作,而且可以訪問類變量。
方法可以重載,要求:方法名相同,但是參數(shù)必須有區(qū)別。(參數(shù)不同可以使類型不同,順序不同,個(gè)數(shù)不同)
方法的返回類型:若無返回類型,則聲明為void.
方法中的變量作用域:
成員變量:整個(gè)類。
局部變量:定義起到方法塊結(jié)束為止。
方法參數(shù):整個(gè)方法或者構(gòu)造方法。
異常處理參數(shù):參數(shù)傳遞給異常處理方法。
構(gòu)造方法:和類同名的方法。為新建對(duì)象開辟內(nèi)存空間后,用于初始化新建的對(duì)象。不能用對(duì)象顯式的調(diào)用。
靜態(tài)初始化器:格式:static{}
靜態(tài)初始化器與構(gòu)造方法的區(qū)別:
靜態(tài)初始化器
構(gòu)造方法
對(duì)類的靜態(tài)域初始化
對(duì)新建的對(duì)象初始化
類進(jìn)入內(nèi)存后,系統(tǒng)調(diào)用執(zhí)行
執(zhí)行new后自動(dòng)執(zhí)行
屬特殊語句(僅執(zhí)行一次)
屬特殊方法
方法的修飾符:
抽象方法:用abstract修飾,只有聲明部分,方法體為空,具體在子類中完成。
類方法:靜態(tài)方法,用static修飾,
調(diào)用時(shí),使用類名作為前綴,而不是類的某個(gè)實(shí)例對(duì)象名
不能被單獨(dú)對(duì)象擁有,屬于整個(gè)類共享。
不能處理成員變量。
最終方法:用final修飾,不能被子類重新定義的方法。
本地方法:用native修飾的方法,表示用其他語言書寫的特殊方法,包括C,C++,FORTRAN,匯編語言等。
四.類成員的訪問控制符:
即類的方法和成員變量的訪問控制符,一個(gè)類作為整體對(duì)象不可見,并不代表他的所有域和方法也對(duì)程序其他部分不可見,需要有他們的訪問修飾符判斷。
權(quán)限如下:
訪問修飾符
同一個(gè)類
同包
不同包,子類
不同包,非子類
private
√
protected
√
√
√
public
√
√
√
√
默認(rèn)
√
√
與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的java 修饰符作用_Java关键字修饰符的作用范围的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python随机生成k个不重复的随机数_
- 下一篇: java图片转换成base64_Java