java 類變數, 例項變數,區域性變數的區別
Java語言支援的變數型別有:
- 類變數:獨立於方法之外的變數,用 static 修飾。
- 例項變數:獨立於方法之外的變數,不過沒有 static 修飾。
- 區域性變數:類的方法中的變數。
變數 | 定義位置 | 初始化值 | 生命週期 | 作用範圍 | 記憶體位置 |
---|---|---|---|---|---|
類變數 | 類中方法外以static關鍵字宣告 | 有預設的初始化的值 | 第一次訪問時建立,在程式結束時銷燬 | 整個類中有效 | 靜態儲存區 |
例項變數 | 類中方法外 | 有預設的初始化的值 | 物件的存在而存在,隨著物件的消失而消失 | 整個類中有效 | 堆記憶體 |
區域性變數 | 方法內 | 不賦值不能用 | 方法的呼叫而存在,方法呼叫完畢而消失 | 所在方法有用 | 棧記憶體 |
詳細程式碼以後補充
變數的使用順序
變數的載入順序
相關推薦
成員變數(例項變數)&區域性變數&靜態變數(類變數)的區別
成員變數(例項變數)&區域性變數&靜態變數(類變數)的區別 成員變數(例項變數)&區域性變數區別: (1)作用域 成員變數:針對整個類有效。 區域性變數:只在某個範圍內有效。(一般指的就是方法,語句體內)(2)儲存位置 成員變數:隨著物件的建立而存在,隨著物件的消失而
JAVA基礎(44)---區域性變數和成員變數的區別及封裝
成員變數和區域性變數的區別
JAVA基礎(45)---區域性變數和成員變數的區別及封裝
成員變數和區域性變數的區別 1、在類中的位置不同
java面向物件(類與物件,區域性變數成員變數,基本型別和引用型別作為引數傳遞)
一.類和物件的區別 類是對某一類事物的抽象描述,而物件用於表示現實中該類事物的個體 可以將玩具模型看作是一個類,將一個個玩具看作物件,從玩具模型和玩具之間的關係便可以看出類與物件之間的關係。類用於描述多個物件的共同特徵,它是物件的模板。物件用於描述現實中的個體,它是類的例項 二.區域性變數和成員變數
成員變數、類變數(靜態變數)、區域性變數的區別
變數名首寫字母使用小寫,如果由多個單片語成,從第2個單詞開始的其他單詞的首寫字母使用大寫。 如果區域性變數的名字和成員變數的名字相同, 要想在該方法中使用成員變數,必須使用關鍵字this class People { String name = "類體重
Java基礎語法 - 面向物件 - 區域性變數
如果在一個成員方法內定義一個變數,那麼這個變數就被稱為區域性變數。 區域性變數在方法執行時被建立,在方法執行結束時被銷燬。區域性變數在使用時必須進行賦值操作或被初始化,否則會出現編譯錯誤 1 package mingri.chapter_6; 2 3 public
Java_12_變數(variable)_區域性變數_例項變數_靜態變數_常量_命名規範
變數(variable) 我們通過變數來操縱儲存空間中的資料,變數就是指這個儲存空間,空間位置是確定的,但是裡面放置什麼值不確定。 Java是一種強型別語言,每個變數都必須宣告其型別。 Java變數是程式中最基本的儲存單元,其要素包括變數名,變數型別和作用域。 變數在使用前必須對其宣告,
靜態變數、成員變數(例項變數)、區域性變數
靜態變數靜態變數也稱作類變數,是在類之中,方法之外,以static關鍵字申明的變數,其獨立在物件之外,有許多物件共享的變數。靜態變數在物件產生之前產生,並長駐於記憶體,其在JVM關閉時銷燬。成員變數成員變數也稱作例項變數、屬性, 申明在類之中,方法之外的變數,隨物件銷燬而銷燬。區域性變數在方法
java中內部類訪問區域性變數為什麼要定義區域性變數為final
因為方法內定義的變數是區域性變數,離開該方法,變數就失去了作用,也就會自動被消除,而內部類卻不會離開它所在方法就失去作用,它有更廣的生命週期,下面通過一個例項加以說明: 如例中所示,在外部類Outer中聲明瞭一個內部類TimerPrint,這個類中的方法引用了方法start
全域性變數、區域性變數、靜態全域性變數、靜態區域性變數在記憶體裡的區別
一、程式的記憶體分配 一個由C/C++編譯的程式佔用的記憶體分為以下幾個部分: 1、棧區(stack)— 由編譯器自動分配釋放 ,存放函式的引數值,區域性變數的值等。其操作方式類似於資料結構中的棧。 2、堆區(heap) — 一般由程式設計師分配釋放, 若程式設計師不釋放,程式結束時可能由OS回收 。注意它
理解Java類載入器之靜態變數總結
Android是用Java開發,其靜態變數的生命週期遵守Java的設計。靜態變數是在類被load的時候分配記憶體的,並且存在於方法區。當類被解除安裝的時候,靜態變數被銷燬。在PC機的客戶端程式中,一個類被載入和解除安裝,可簡單的等同於jvm程序的啟動和結束。那麼在Androi
static全域性變數和普通全域性變數區別?static區域性變數和普通區域性變數區別?static函式和普通函式區別
幾者的區別從三個方面考慮: 1初始化時間 2 作用域 3 分配記憶體空間 static全域性變數和普通全域性變數區別: 區別: 1.static全域性變數編譯是初始化,在main()函式之前初始化並且僅初始化一次; 2.static全域
Java多執行緒操作區域性變數與全域性變數
在這篇文章裡,我們首先闡述什麼是同步,不同步有什麼問題,然後討論可以採取哪些措施控制同步,接下來我們會仿照回顧網路通訊時那樣,構建一個伺服器端的“執行緒池”,JDK為我們提供了一個很大的concurrent工具包,最後我們會對裡面的內容進行探索。 為什麼要執
普通區域性變數、普通全域性變數、靜態區域性變數、靜態全域性變數、普通函式、靜態函式區別
普通全域性變數與靜態全域性變數 在全域性變數(外部變數)的說明之前再冠以static就構成了靜態的全域性變數。 全域性變數本身就是靜態儲存方式, 靜態全域性變數當然也是靜態儲
C語言中全域性變數、區域性變數、靜態全域性變數、靜態區域性變數的區別
1.C++變數根據定義的位置的不同的生命週期,具有不同的作用域,作用域可分為6種: 全域性作用域,區域性作用域,語句作用域,類作用域,名稱空間作用域和檔案作用域。 從作用域看: 1>全域性變數具有全域性作用域。全域性變數只需在一個原始檔中定義,就可以作用於所有的原始檔
C/C++中的靜態全域性變數,靜態區域性變數,全域性變數,區域性變數的區別
static有兩種用法:面向過程程式設計中的static和麵向物件程式設計中的static。前者應用於普通變數和函式,不涉及類;後者主要說明static在類中的作用。 面向過程設計中的static 全域性變數、區域性變數、靜態全域性變數、靜態區域性變數的區別 C++
C|C++中的靜態全域性變數,靜態區域性變數,全域性變數,區域性變數的區別
static有兩種用法:面向過程程式設計中的static和麵向物件程式設計中的static。前者應用於普通變數和函式,不涉及類;後者主要說明static在類中的作用。 一、面向過程設計中的static 全域性變數、區域性變數、靜態全域性變數、靜態區域性變數的區別 C++變數根據定義的位置的不同的生命週期,具有
static全域性變數與普通全域性變數區別?static區域性變數與普通區域性變數區別?static函式與普通函式區別?
static 宣告的變數在C語言中有兩方面的特徵: 1.變數被放在程式的全域性儲存區中,這樣在下一次呼叫的時候還可以保持原來的賦值。這一點是它與堆疊變數和堆變數的區別。 2.變數用static告知編譯器,自己僅在變數的作用範圍內可見。這一點是它與全域性變數的區別。Tips:A.若全域性變數僅在單個C檔案中訪
【tensorflow】tensorflow中的全域性變數GLOBAL_VARIABLES及區域性變數LOCAL_VARIABLES
在初學tensorflow的時候,我們會發現在函式體內定義tf.variable()或者tf.get_variable()變數的時候,跟其他語言不同,在tensorflow的函式體內定義的變數並不會隨著函式的執行結束而消失。這是因為tensorflow設定的全域性變數及區域性變數與其他
全域性變數、靜態全域性變數、區域性變數、靜態區域性變數、靜態函式
1.所在記憶體區域 全域性變數、static全域性變數、static區域性變數都在全域性區(靜態區),而區域性變數在棧區。2.生命週期 全域性變數、static全域性變數、static區域性變數都存在於程式的整個生命週期中;區域性變數存在於函式執行期間,函式結束,變數消亡,其記憶體被回收。3.作用域