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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

一切都是对象

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

? ? Java既支持面向過程編程,又支持面向對象編程,但Java假定你只進行面向對象編程。在Java中幾乎一切都是對象,這些對象通過引用進行操縱。最佳實踐是創建引用的時候就進行初始化,即創建一個對象并將其綁定到引用上。

? ? 數據存儲位置:

? ? (1)寄存器:寄存器位于CPU內部,是速度最快的存儲,但數量極其有限,它對于Java而言是透明的。

? ? (2)棧:位于RAM中,但通過棧指針(stack pointer)可從CPU直接獲得支持。棧指針下移創建內存,上移釋放空間。速度僅次于寄存器,但在編譯期就需要知道棧里所有元素的確切生命周期,對象引用位于棧內。

? ? (3)堆:也位于RAM中,不需要在編譯期就知道存儲的生命周期,但分配和釋放存儲空間需要更長時間(Java的分配策略已經非常快,所以一般不需要擔心)。

? ? (4)常量存儲:所有字符串常量和字符串常量表達式都位于常量存儲中。

? ? (5)非RAM存儲:可以脫離程序控制,主要有兩種,一種是serialized objects(streamed objects),用于發送到另一臺機器上;第二種是persisted objects,用于將對象存放在磁盤上。Java提供了輕量級的持久化,JDBC和Hibernate提供了更復雜的支持用于將對象信息存放在數據庫中,以及從數據庫中重新獲取對象信息。

? ? 對于原始數據類型,Java并不創建對象,而是變量直接存儲值,因為創建許多小對象會導致非常低效。Java基本數據類型大小:

? ??

? ? boolean類型沒有指定大小,可以持有true和false兩個值即可。

? ? BigInteger和BigDecimal提供任意精度的整數和浮點數運算,代價是速度會更慢一些。

? ? Java保證會初始化數組,創建對象數組時,實際上創建的是對象引用數組,引用會被初始化為null,原始數據類型的數組元素會被初始化為0或false,char被初始化為'\u0000'(null)(打印出來是一個空格)。

? ? Java數組會使用額外的空間保存數組的大小,并在運行時檢查每次數組訪問是否超出范圍。

? ? 程序員需要創建所有對象,但不需要銷毀任何對象。作用域決定了在其內定義的變量名的可見性和生命周期,作用域由花括號決定。Java對象與基本類型生命周期不同,基本類型出作用域即失效,對象出作用域后仍然存在。

? ? Java中有兩種注釋:第一種多行注釋以/*開頭,以*/結束;第二種單行注釋以//開頭。單行注釋更易于使用,因為兩次輸入的按鍵相同,另外IDE快捷鍵更易于操作。

? ? field(data member)、method(member function)。

? ? Java使用域名反轉對包進行命名,并將包名對應到路徑上,缺點是導致路徑很深,許多頂層目錄幾乎是空的,目的僅僅是反應URL。

? ? 使用import最好將所有的類都明確指出,IDE可以設置某個包引用超過多少個類后自動改為impot *。

? ? 靜態域只有1份,非靜態域每個對象都有相應的存儲。但無論靜態還是非靜態方法都只存儲1份,區別在于是否能夠不創建對象即可調用。

? ? Sytem.getProperties.list(System.out);

? ? System.getProperty("user.name");

?

轉載于:https://www.cnblogs.com/cbkun/p/11055151.html

總結

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

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