Java連載147-對象存儲的地方

異常處理:處理錯誤

  • 異常處理就像是與程序正常執行路徑並行的,在錯誤發生的時候執行的另一條路徑,因爲它是另一條完全分離的執行路徑,所以它不會干擾正常執行的代碼

客戶端編程

  • 瀏覽器的提交動作通過所有的WEB服務器都提供的通用網關接口(common gateway interface,CGI)傳遞,提交的內容會告訴CGI應該如何處理它,最常見的動作就是運行一個在服務器中常被命名爲“cgi-bin"的目錄下的一個程序。

一切都是對象

  • Java是基於C++開發的

對象可能會存儲到什麼地方

  • 寄存器:最快的存儲區,但是位於處理器中,數量有限,Java無法直接控制,但是C、C++可以給出分配意見
  • 堆棧:快速方式,僅次於寄存器,位於RAM(隨機訪問存儲器),通過堆棧指針可以從處理器那裏獲取存儲控件,向下移動就是分配內存,向上移動就是釋放內存,
  • 堆:通用內存池(位於RAM),用於存放對象

二者之間的區別:堆中編譯器不需要知道存儲的數據在堆中存活的時間,但是在堆棧中需要知道所有項的確切生命週期

  • 常量存儲:通常存放在代碼內部,將其存放在ROM(只讀存儲器)中。
  • 非RAM存儲:數據完全獨立於程序之外,可以不接受任何控制,基本的例子就是流對象和持久化對象。流對象中轉換對象爲字節流,持久化對象,就存儲在磁盤中。需要的時候,可以恢復成常規的,基於RAM的對象

基本類型

  • 存放在堆棧中,太小了
  • 基本類型的大小是固定的,和其他大多數語言隨着機器硬件架構變化而變化不同。
  • boolean所佔空間大小沒有確定,僅定義爲true或者false
  • 高精度數字類:BigInteger,BigDecimal,基本類型能夠執行的操作,同樣應用到這兩個類中,但是要以方法調用的形式來做。

作用域

  • 空格、製表符、換行都不會影響程序的執行結果,因爲Java是一種自由格式的語言(free-form)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章