3.Java基礎面試題(一)
一、在Java中,是值傳遞還是引用傳遞?
解析:在 Java 語言中,把對象作為參數傳遞給方法時,方法接收到的是對象內存引用
的地址,而不是對象本身,這個引用地址是對象在內存中的位置,它不可能像對象內
容那樣被改變。所以 Java 語言中沒有引用傳遞,只有值傳遞。
二、在Java中,會存在內存泄漏嗎?
解析:Java 語言雖然提供了垃圾回收機制,它可以自動回收那些不再被使用的對象,以釋放
內存空間,但是也會存在編程導致的內存泄露問題,通常是不再使用的對象,但是程
序又持有對該對象的引用,從而導致該對象無法被回收的情況稱為內存泄露
三、在Java中,char 類型變量是否能保存一個漢字?
解析:每個字節的取值範圍是-128~127,它可以保存一個英文字符,包括字母、數字和英文標點。
而漢字的存儲是由兩個字節保存的,因為漢字的數量太多,它的編碼範圍遠遠超
過一個字節的取值範圍,所以必須使用雙字節表示,在 Java 語言中使用的是 Unicode
編碼,可以存儲 65535 個字符,所以 Java 的字符類型被定義為雙字節,這也同時滿
足了漢字的存儲需求。
char 類型變量可以存儲漢字,因為 Java 中以 Unicode 編碼,一個 char 占 16 個位
即兩個字節,所以放一個中文是沒問題的。
四、在 JAVA 中,如何跳出當前的多重嵌套循環?
解析:Java 語言提供了兩個跳轉語句,它們是 break 和 continue。
其中 break 可以終止當前循環,轉而執行循環語句之後的其他代碼。
而 continue 語句則終止或者說忽略本次循環,轉而執行循環語句的下一次循環,也就是說它並沒有終止循環。
同樣可以終止循環的辦法是使用 return 語句終止當前方法。
用 break 終止循環,或者用 return 終止當前方法體。
五、
3.Java基礎面試題(一)