Java編程思想總結筆記Chapter 2

  本章介紹Java程序的基本組成部分,體會到Java中幾乎一切都是對象。html

 

第二章   一切都是對象編程

目錄:數組

  • 2.1 用引用操縱對象
  • 2.2 必須由你建立全部對象
  • 2.3 永遠不須要銷燬對象
  • 2.4 建立新的數據類型:類
  • 2.5 方法、參數和返回值
  • 2.6 構建一個Java程序
  • 2.7 你的第一個Java程序
  • 2.8 註釋和嵌入式文檔
  • 2.9 編碼風格

2.1 用引用操縱對象安全

一切都看做對象,操縱的標識符其實是對象的一個「引用」,遙控器(引用)操縱電視機(對象),想調控電視,只需經過遙控器,且遙控器是獨立存在的。post

2.2 必須由你建立全部對象編碼

一旦建立了一個引用,就但願它能與一個新的對象相關聯,一般用new操做符來實現這一目的。url

String s = new String("Jiancheng");

 

五個不一樣的地方能夠存儲數據:spa

  • 寄存器:位於CPU內部,寄存器的數量極其有限,因此寄存器根據需求進行分配,速度最快。
  • 堆棧:位於通用RAM(隨機訪問寄存器)中,Java編譯器必須知道存儲在堆棧內全部數據的大小和生命週期,「堆棧指針」向下移動則分配新內存,向上移動則釋放內存,速度僅次於寄存器,基本數據類型和引用存放在此。
  • 堆:位於RAM區,用於存放全部Java對象,編譯器不用知道數據大小和生命週期.
  • 常量存儲:常量值一般直接存放在程序代碼內部。
  • 非RAM存儲:徹底存活在程序以外,不受程序的任何控制,例子是流對象持久化對象,在流對象中,對象轉換成字節流,一般被髮送到另外一臺機器。在"持久化"對象中,對象被存放於硬盤上,即便程序終止,它們仍能夠保持本身的狀態。

 9種基本類型:指針

 

boolean類型所佔內存儲空間的大小沒有明確指定,僅定義爲可以取字面值true或false。code

高精度數字:

  • BigInteger:支持任意精度的整數
  • BigDecimal:支持任意精度的定點數

操做與對基本類型所能執行的操做類似,但必須以方法調用方式取代運算符方式來實現。

Java中的數組:
數組會被初始化,並且不能在它的範圍以外被訪問。這種範圍檢查,是以每一個數組上少許的內存開銷及運行時的下標檢查爲代價(換來安全性和效率)。

 2.3 永遠不須要銷燬對象

做用域:

------------------------------------------------------------------

對象的做用域:

Java的做用和基本類型差異很大,new建立一個Java對象後,它能夠存活於做用域以外。只要你須要這個對象,就會一直保留下去,直到垃圾回收器辨別到該對象不會再被引用並釋放該對象的內存空間,這樣就消除了內存泄漏的問題。

2.4 建立新的數據類型:類

類決定了某一對象的外觀與行爲,肯定了對象的類型。

基本成員默認值:

當變量做爲類的成員使用時,Java才確保給定其默認值,來確保基本類型成員變量獲得初始化(初始值可能不是你想要的,最好本身初始化)。注意默認初始化的方法不適用於非某個類的字段變量,忘記初始化,Java會在編譯時給你返回一個錯誤。

2.6 構建一個Java程序

static關鍵字:

下面兩種狀況須要使用static

  • 只想爲某特定域分配單一存儲空間,而不去考慮究竟要建立多少對象。
  • 某個方法不與包含它的類的任何對象關聯在一塊兒,就是沒有建立對象,也可以調用這個方法。
class StatiTest{ static i = 47; //能夠直接StatiTest.i這樣調用 }

 

StatiTest st1 = new StatiTest();
StatiTest st2 = new StatiTest();
其中st1.i和st2.i指向同一存儲空間,所以他們具備相同的值。

static做用於某個方法,區別在於用法在不建立任何對象的前提下就能夠調用它,類.方法()。

2.9 編碼風格

 駝峯風格:

  • 類,每一個單詞的首字母採用大寫
  • 方法、字段及對象等,第一個單詞的首字母採用小寫,其他首字母大寫

總結:

本章容易理解,對Java語言及它的一些基本思想有一個整體的認識,大多數知識點也接觸過,但容易把細節的地方忘記,多看無礙。

轉載註明:http://www.cnblogs.com/wujiancheng/

 Java編程思想總結筆記The first chapter

相關文章
相關標籤/搜索