java基礎知識(一)
阿新 • • 發佈:2022-04-11
1.1 為什麼Java程式碼可以實現一次編寫、到處執行?
- 跨平臺的是Java程式,JVM是跨平臺的關鍵
- 在程式執行前,Java程式需要經過編譯器編譯為位元組碼檔案,在程式執行時,JVM會將位元組碼檔案翻譯為機器語言並執行
- java程式只需經過一次編譯,然後在不同平臺下安裝對應版本的JVM,就能將位元組碼檔案翻譯成特定平臺下的機器語言並執行
1.2 一個Java檔案裡可以有多個類嗎(不含內部類)?
- 一個Java檔案中可以包含多個類,但最多隻能有一個類被public修飾
- 如果這個類中包含被public修飾的類,則這個類必須與Java檔案同名
1.3 說一說你對Java訪問許可權的瞭解
java語言中有四種訪問修飾符,public protected default private 。不加修飾符時預設是default
- public可以被任何包下的任何類訪問
- protected可以被同一包及其他包下的子類訪問
- default可以被同一包下的類訪問
- private只能被本類訪問
1.4 介紹一下Java的資料型別
Java資料型別分為基本資料型別和引用型別兩種
基本資料型別分為四大類八小類,分別是整數型別(byte/short/int/long)、浮點型別(float/double)、字元型別(char)、布林型別(boolean)
- byte 1位元組 8位
- short 2位元組 16位
- int 4位元組 32位
- long 8位元組 64位
- float 4位元組 32位
- double 8位元組 64位
- char 2位元組 16位
- boolean
引用型別就是對一個物件的引用
1.5 int型別的資料範圍是多少?
int型別佔4位元組32位,-2^31~2^31-1
1.6 請介紹全域性變數和區域性變數的區別
java中的變數分為成員變數和區域性變數
成員變數:
- 成員變數是在類範圍內定義的變數
- 成員變數有預設初始值
- 被static修飾的成員變數也叫靜態成員變數,它儲存於方法區中,生命週期與當前類相同
- 未被static修飾的成員變數叫例項成員變數,它儲存在物件所在的堆記憶體中,生命週期與物件相同
區域性變數:
-
區域性變數是在方法內定義的變數
- 區域性變數沒有初始值
- 區域性變數儲存與棧記憶體,作用的範圍結束,變數空間會自動釋放
1.7 請介紹一下例項變數的預設值
例項變數若為引用資料型別,其預設值一律為null。若為基本資料型別,其預設值如下:
-
byte:0
-
short:0
-
int:0
-
long:0L
-
float:0.0F
-
double:0.0
-
char:'\u0000'
-
boolean:false
1.8 為啥要有包裝類?
Java語言是面向物件的語言,其設計理念是一切皆物件,但8種基本資料型別卻不具備物件的特徵,所以為8種基本資料型別都定義了引用型別,即包裝類
1.9 說一說自動裝箱、自動拆箱的應用場景
- 自動裝箱:基本資料型別自動轉換為對應包裝型別
- 自動拆箱:包裝型別自動轉換為對應基本資料型別
1.10 如何對Integer和Double型別判斷相等?
- 不能直接用==比較,因為他們不是同一資料型別
- 不能轉為字串比較,浮點數帶小數
- 以將Integer、Double先轉為轉換為相同的基本資料型別(如double),然後使用==進行比較。