Java語言基礎問題

來源:互聯網
上載者:User

標籤:代碼   原則   log   方便   許可權   訪問   報錯   font   運算子   

1. 一個Java類檔案中可以有幾個公有類

 

在eclipse中測試代碼時會出現所示的錯誤,此處只允許用final或abstract來修飾類,也就是一個類檔案中只能有一個public修飾的類,此下對於這個問題作出一點分析。

package包主要就是用來存放類的,可以有無數個public類,對此沒有個數限制,但是一個Java源檔案中只能有一個public類。

java程式是從一個public類的main函數開始執行的,就像當初學習C語言時一個工程中只能有一個main函數。 只能有一個public類是為了給類裝載器提供方便。如果一個類被聲明為public,則它本身所在的源檔案名稱也必須與類名相同,並且嚴格區分大小寫。

每個編譯單元都只能有一個public 類。因為每個編譯單元都只能有一個公用介面,用public類來表現。該介面可以按照要求包含眾多的支援包存取權限的類。如果有一個以上的public   類,編譯器就會報錯。 當然一個編譯單元內也可以沒有public類。
在一個源檔案.JAVA檔案中可以有很多類,只有一個public類。因為在public類中找程式的入口, 若有很多public類,電腦就找不到入口,那麼程式就無法執行了。

2.Java變數遵循“同名變數的屏蔽原則”

 

通過兩圖對比可以看出,當注釋掉main函數中的int number=1;時顯示結果為0。

因為在此程式中,第一個number為全域變數,第二個number為局部變數。在java中局部變數可以覆蓋全域變數的值,當在局部使用某個變數的時候JVM會優先找和當前使用位置近的變數定義。

3.Java中的類型轉換

 

 

 ①byte(位元組):8bits,數值範圍為-128-127

②short(短整型):16bits,數值範圍為-32768-32768

③int(整型):32bits,數值範圍為-2147483648-2147483648

④long(長整型):64bits,數值範圍為-9233372036854477808-9233372036854477808

⑤float(浮點型):32bits,數值範圍為-3.40292347E+38-3.40292347E+38

⑥double(雙精確度):64bits,數值範圍為-1.7976931486231570E+308-1.7976931486231570E+308

⑦char(字元型):16bits,數值範圍為‘\u0000-u\ffff’

⑧boolean(布爾型):1bits,數值範圍為true/false

中int指向double的箭頭應為實線,而且應還有一條從long指向float的虛線箭頭,此為該圖中的一點錯誤。

Java 語言中的資料類型轉換有兩種:①自動類型轉換:編譯器自動完成類型轉換,不需要在程式中編寫代碼。②強制類型轉換:強制編譯器進行類型轉換,必須在程式中編寫代碼。

自動類型轉換的轉換規則為從儲存範圍小的類型到儲存範圍大的類型,不會發生精度的損失。而強制類型轉換的轉換規則為從儲存範圍大的類型到儲存範圍小的類型,此種轉換會發生精度的損失。

4. 為什麼double類型的數值進行運算得不到“數學上精確”的結果?

float 和double類型主要是為科學計算和工程計算而設計的,他們執行二進位浮點運算,這兩種類型在電腦中的儲存分為三部分:符號位、指數為、尾數部分。資料以二進位儲存在電腦時,會出現無線迴圈系列,在資料轉化中會出現錯誤。十進位不能準確的表示1/3,同樣二進位不能精確的表示1/10。

double類型的數值佔用64bit,即64個位元,除去最高位表示正負符號的位,還有63位,而我們給出的數值,在大多數情況下需要比64bit更多的位元才能準確表示出來(甚至是需要無窮多位),而double類型的數值只有64bit,後面捨去的位元一定會帶來誤差,無法得到“數學上精確”的結果。

5.動手動腦 

 

語句一輸出中“+”串連X和Y,計算結果是將X和Y將兩資料連線。

語句二輸出中“+”是運算子,對X和Y求和。

 

 

 

 

 

 

Java語言基礎問題

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.