日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

第2章 一切都是对象

發布時間:2023/12/10 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 第2章 一切都是对象 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2一切都是對象

????? 對象的定義(類型)、創建、存儲、操縱、銷毀、組成,引用(基本變量名)的初始化????

?

2.1 用引用操縱對象

????? ·編程語言操縱內存中元素的方式:

?????????? ·C、C++:基于特殊語法的間接表示—指針

?????????? ·Java:操縱對象引用 ->對象

???????????????? ·創建引用

?????????? ????? ·創建對象

???????????????? ·關聯:“=”

???????????????? ·String類型:用帶引號的文本初始化

???????????????? ????? ·對引用的初始化

?

2.2 必須由你創建所有對象

????? ·存儲位置

?????????? ·寄存器:最快;CPU內;數量有限;按需分配;無法直接控制;覺察不到存在(C、C++允許向編譯??? 器建議寄存器的分配方式);【誰在操控寄存器?】

?????????? ·堆棧:速度僅次于寄存器;RAM中;堆棧指針控制;

???????????????? ·堆棧指針:{向下移動:分配內存;向上移動:釋放內存}

???????????????? ·靈活受限:統必須知道存儲在堆棧內所有項的確切生命周期,以便上下移動指針;

???????????????? ·{對象引用:堆棧;new出的對象:堆}

?????????? ·堆:比棧慢;RAM中;用于存放所有的Java對象

???????????????? ·和堆棧相比:

????????????????????? ·好處:編譯器不需要知道存儲的數據在堆里存活多長時間,更靈活

????????????????????? ·壞處:進行存儲分配和清理比堆棧要更多時間

?????????? ·常量存儲:通常放在程序代碼內,安全,永不改變

???????????????? ·嵌入式系統:同代碼分離,存放在ROM中

?????????? ·非RAM存儲流對象 & 持久化對象——完全存活于程序之外;不受程序的??? 任何控制

???????????????? ·流對象(序列化 - 輕量級持久化):對象轉化成字節流,通常被發送給另一臺機器

???????????????? ·持久化對象:存在磁盤上;需要時可恢復成基于RAM的對象

????????????????????? ·嚴格持久化:JDBC、Hibernate機制

?

????? ·特例:基本類型:并非是引用的“自動”變量,直接存“值”,堆棧中

?????????? ·占據存儲空間的大小不變

?????????? ·boolean類型~存儲空間(大小):沒有明確指定,僅定義為能夠取字面量true或false

?????????? ·void是基本類型(返回類型)但沒有值,有包裝器類型

?????????? ·什么是拆箱比較?

?????????? ·BigInteger & BigDecimal:大體上屬于“包裝器類”,但沒有對應的基本類型

???????????????? ·方法調用方式 而非運算符方式

????????????????????? ·速度換取了精度

?

????? ·Java中的數組

?????????? ·C、C++中的數組 = 內存塊:

???????????????? ·問題:

????????????????????? 1.可能在初始化前被使用(內存);

????????????????????? 2.訪問自身內存塊之外的數組

?????????? ·Java:

???????????????? ·確保數組會被初始化后才能使用——每個數組上少量的內存開銷

???????????????? ·不能在它的范圍之外被訪問——運行時的下標檢查

???????????????? ·Java有時可以優化以上操作

?????????? ????? ·Java KO. C、C++:更安全,效率更高

?????????? ·Java編譯器初始化數組:

???????????????? ·引用數組:null

???????????????? ·基本數據類型數組:0

?

2.3 永遠不需要銷毀對象

????? ·作用域決定變量名的可見性、生命周期

????? ·(作用域內的)代碼(一般)存在于堆棧中

????? ·Java對象:和基本類型生命周期不同——new出來的對象在堆中,可以存活于作用域之外

?????????? ·存活于作用域之外:也就是說,作用域內的東西被清理后,垃圾回收器會在任意時間回收它

????? ·Java垃圾回收器監視new創建的對象,辨別不會再被引用的對象,隨后【什么時候?】釋放這些對象的內存空間~消除了“內存泄漏”

?????????? ·不用new創建對象的方式:

???????????????? ·Class或Constructor類的newInstance()方法

???????????????? ·clone()

???????????????? ·反序列化

?????????? ·那么問題來了,這些對象怎么清理?finalize()?

?

2.4 創建新的數據類型:類

????? ·類[字段不是局部變量,方法]

????? ·基本類型成員默認值

?

2.5 方法、參數和返回值

????? ·方法[名稱,參數,返回值,方法體]

?????????? ·方法簽名[方法名,參數列表]

?????????? ·發送消息給對象 = 調用方法的行為

????? ·參數列表:傳遞對象時,傳遞的是對象引用或基本類型值

?????????? ·字符串中每個字符(2字節):來支持Unicode字符集

?

2.6 構建一個Java程序

????? ·名字(可見性):反轉域名

????? ·運用其他構件:使用import定位文件

????? ·static關鍵字:

?????????? ·為某特定域分配單一存儲空間

?????????? ·創建不與對象關聯的方法

?

2.7 你的第一個Java程序

????? ·編譯,運行

?

2.8 注釋和嵌入式文檔

????? ·注釋文檔

?????????? ·javadoc:提取注釋的工具

???????????????? ·語法:

???????????????? ????? ·javadoc命令只能在"/**----*/"中出現

???????????????? ????? ·使用方式:

????????????????????? ????? 1.嵌入HTML

????????????????????? ????? 2.使用“文檔標簽”:以“@”開頭

???????????????? ????? ·三類注釋文檔位置:類、域、方法之

???????????????? ????? ·只有public、protected成員的文檔注釋才能被輸出(可用-private進行標記輸出private注釋)

???????????????? ????? ·不要嵌入html標題標簽:如<h1>或<hr>

?????????? ·提取注釋:javadoc

?

2.9編碼風格

????? ·駝峰風格

轉載于:https://www.cnblogs.com/InformationGod/p/8510714.html

總結

以上是生活随笔為你收集整理的第2章 一切都是对象的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。