標籤:運行時 OLE 優先 資訊 一個 字母 系統 狀態 類型
---恢複內容開始---
- main()方法的參數名可以改變;main()方法的參數個數不可以改變。
- 當一個程式沒有main()方法是,是可以編譯通過的,但是不能給運行,因為找不到一個主函數入口。
- 標識符以字母、數字、底線、貨幣符號組成;不能以數字開頭,區分大小寫。
- boolean(布爾類型)只有true、false兩個值,沒有0和1。
- java資料類型分為單一資料型別(8個)和複雜資料類型(class interface Array等,沒有介面類型)
- 相同優先順序中,按結合順序計算。大多數運算是從左至右計算,只有三個優先順序是從右至左結合的,它們是單目運算子、條件運算子、賦值運算子。
- x=5;y=x--;z=--x;結果為:4,4 優先順序問題
- new運算子用於對象和數組的執行個體化:建立數組 int[] a = new int[6] 或 int a[] = new int[6]
- java中的數組長度是使用變數length;如:a.length;
- java變數分為三類:成員變數、局部變數、靜態變數;
範圍分別為:當前對象、方法內部、類;
局部變數:在方法體中定義的變數,局部變數只在定義它的方法中有效。
成員變數:在整個類中都有效(全域變數是C語言中的叫法,Java中沒有全域變數的概念)。
成員變數又分為 執行個體變數(非靜態變數) 和 類變數(靜態變數).
執行個體變數:沒有使用static關鍵字修飾的變數,它又稱為屬性,對該類不同的對象來說,屬性是不同的。
類變數:使用static關鍵字修飾的變數,一個類中只有一個該變數,該類不同的對象共用同一個靜態成員變數。
11. 對象記憶體配置:jvm記憶體劃分為方法區、堆、棧、PC寄存器和本地方法棧等5個地區;
方法區:用於儲存被裝載類型的資訊和類變數的邏輯記憶體地區;
堆:運行時建立的所有執行個體或數組都放在同一個堆中,一個jvm執行個體只存在一個堆空間,所有線程都將共用這個堆;
棧:每啟動一個新線程jvm時,都會為它分配一個java棧,java棧以幀為單位儲存線程的運行狀態;
棧幀:由局部變數區、運算元棧和幀資料區組成;
本地方法棧:java程式經常會調用本地方法,本地方法可以通過本地方法介面來訪問jvm的運行時的資料區,所以一個啟動並執行java程式可能會用到一些與本地方法相關的資料區,即:本地方法棧;
12. transient:聲明變數為臨時變數,當對象不再被使用時,jvm需要將對象的所有成員變數和方法進行儲存,如果希望jvm忽略變數的儲存,可以使用transient來定義暫時變數; transient int id;
13. volatile:聲明同步變數,保護變數受非同步,在多線程運行環境中,一個成員變數可能被多個線程修改,使用volatile來聲明變數,維護變數在並發線程的前後一致;
14.native:定義本地方法,用於java跨語言進行系統底層操作;
---恢複內容結束---
java程式設計習題總結