欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

全面了解java基本類型和封裝類型的區(qū)別及應用

 更新時間:2016年09月01日 11:36:29   投稿:jingxian  
下面小編就為大家?guī)硪黄媪私鈐ava基本類型和封裝類型的區(qū)別及應用。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

1. 基本類型只能按值傳遞,而每個基本類型對應的封裝類是按引用傳遞的。

2. 從性能上說java中的基本類型是在堆棧上創(chuàng)建的,而所有的對象類型都是在堆上創(chuàng)建的,(對象的引用在堆棧上創(chuàng)建)。比如

Integer i=new Integer(10); 其中new Integer()是在堆上創(chuàng)建的,而他的引用Integer i是在堆棧上。 封裝類的出現(xiàn),是為了更方便的使用一些基本類型不具備的方法,比如valueOf(),toString()等等。還有你如果想傳遞一個int對象的引用,而不是值,那只能用封裝類。

在堆棧上分配內存的調用效率和在堆上分配內存的效率差太多了。雖然在堆棧上分配內存效率高,不過在堆棧上分配內存有內存泄露的問題。(這是一個平庸程序員基本解決不了的問題...)java用了一種很天才的方法提高了在堆上分配內存的效率,盡管如此,java還是慢。他不太可能達到向c++那么快,盡管他一直在承諾總有一天虛擬機會和機器碼速度一樣快。

JDK5.0開始可以自動封包了 ,也就是基本數(shù)據(jù)可以自動封裝成封裝類,基本數(shù)據(jù)類型的好處就是速度快(不涉及到對象的構造和回收),封裝類的目的主要是更好的處理數(shù)據(jù)之間的轉換,方法很多,用起來也方便。

當然,封裝類型的傳遞是引用傳遞,比如

Integer a = new Integer(1);

表示一個Integer類型的引用a引用了一塊內存,這塊內存中的數(shù)據(jù)是1; 而a中所存的則是這塊內存的引用(地址),把a傳給別的方法或對象時,則是把a的引用傳遞過去了。

類型之間的轉換:

String b = "123456";

int c = Integer.parseInt(b);

表示把字符串123456轉成整型數(shù)字,其中parseInt是靜態(tài)方法,可以直接使用

還有一點,在某些場合,需要用到封裝類,比如一個集合List,它只能往里面添加對象,也就是Object,那么直接存數(shù)字肯定是不行 的,則需要將數(shù)字封裝成封裝類型對象再存到該List中,如

List list = new ArrayList(); 
list.add(new Integer(1)); 
list.add(new Integer(2)); 
list.add(new Integer(3)); 
list.add(new Integer(4)); 
JDK5.0以后可以自動封包,所以可以簡寫成 
List list = new ArrayList(); 
list.add(1); 
list.add(2); 
list.add(3); 
list.add(4);

以上這篇全面了解java基本類型和封裝類型的區(qū)別及應用就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • java?獲取子串速率比較分析

    java?獲取子串速率比較分析

    這篇文章主要為大家介紹了java?獲取子串速率比較分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-12-12
  • SpringBoot2.0 整合 SpringSecurity 框架實現(xiàn)用戶權限安全管理方法

    SpringBoot2.0 整合 SpringSecurity 框架實現(xiàn)用戶權限安全管理方法

    Spring Security是一個能夠為基于Spring的企業(yè)應用系統(tǒng)提供聲明式的安全訪問控制解決方案的安全框架。這篇文章主要介紹了SpringBoot2.0 整合 SpringSecurity 框架,實現(xiàn)用戶權限安全管理 ,需要的朋友可以參考下
    2019-07-07
  • 一文搞懂Java設計模式之責任鏈模式

    一文搞懂Java設計模式之責任鏈模式

    這篇文章主要給大家介紹了關于Java設計模式之責任鏈模式的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12
  • 在IDEA里gradle配置和使用的方法步驟

    在IDEA里gradle配置和使用的方法步驟

    這篇文章主要介紹了在IDEA里gradle配置和使用的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-07-07
  • Scala之文件讀取、寫入、控制臺操作的方法示例

    Scala之文件讀取、寫入、控制臺操作的方法示例

    這篇文章主要介紹了Scala之文件讀取、寫入、控制臺操作的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-06-06
  • java實現(xiàn)后臺圖片跨域上傳功能

    java實現(xiàn)后臺圖片跨域上傳功能

    這篇文章主要給大家介紹了關于java實現(xiàn)后臺圖片跨域上傳功能的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用java具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-07-07
  • java數(shù)據(jù)結構之二分查找法 binarySearch的實例

    java數(shù)據(jù)結構之二分查找法 binarySearch的實例

    這篇文章主要介紹了java數(shù)據(jù)結構之二分查找法 binarySearch的實例的相關資料,希望通過本文能幫助到大家,讓大家理解掌握這部分內容,需要的朋友可以參考下
    2017-10-10
  • SpringBoot集成Redis及Redis使用方法

    SpringBoot集成Redis及Redis使用方法

    Redis是現(xiàn)在最受歡迎的NoSQL數(shù)據(jù)庫之一,Redis是一個使用ANSI C編寫的開源、包含多種數(shù)據(jù)結構、支持網(wǎng)絡、基于內存、可選持久性的鍵值對存儲數(shù)據(jù)庫,這篇文章主要介紹了SpringBoot集成Redis及Redis使用方法,需要的朋友可以參考下
    2023-08-08
  • Spring Boot環(huán)境屬性占位符解析及類型轉換詳解

    Spring Boot環(huán)境屬性占位符解析及類型轉換詳解

    這篇文章主要給大家介紹了關于Spring Boot環(huán)境屬性占位符解析及類型轉換的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-08-08
  • 深入理解Java設計模式之組合模式

    深入理解Java設計模式之組合模式

    這篇文章主要介紹了JAVA設計模式之組合模式的的相關資料,文中示例代碼非常詳細,供大家參考和學習,感興趣的朋友可以了解下
    2021-11-11

最新評論