最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

關(guān)于Java變量的聲明、內(nèi)存分配及初始化詳解

 更新時間:2017年03月08日 10:50:50   投稿:jingxian  
下面小編就為大家?guī)硪黄P(guān)于Java變量的聲明、內(nèi)存分配及初始化詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

實例如下:

class Person
{
  String name;
  int age;
  void talk()
  {
    System.out.println("我是: "+name+", 今年: "+age+"歲");
  }
}
 
public class TestJava2_1
{
  public static void main(String args[])
  {
    Person p;
    if (p == null)
    {
      p = new Person();
    }
     
    p.name = "張三";
    p.age = 25;
    p.talk();
  }
}

為了更好的了解Java中變量的使用方式,我們做一個實驗。將以上代碼保存為TestJava2_1.java文件,之后執(zhí)行 “javac TestJava2_1.java” 命令將代碼編譯成二進制文件。

編譯時將報錯,報錯內(nèi)容大致如下:

“TestJava2_1.java:59: 錯誤: 可能尚未初始化變量p”

編譯器認為引用數(shù)據(jù)類型變量p未初始化,所以不可以判斷是否等于null,但我認為編譯器對于此錯誤的表述不太準(zhǔn)確。就算變量p沒有給予初始值,默認值至少是存在的,那么用默認值和null比較有什么不可以呢。我認為正確的錯誤表述應(yīng)該是 “變量p尚未分配內(nèi)存空間”?!癙erson p” 僅僅是聲明有一個引用數(shù)據(jù)類型變量p,但并未給p分配任何內(nèi)存空間,這點和C/C++是不一樣的。

將變量p的聲明改為 “Person p = null” 后,執(zhí)行 “javac TestJava2_1.java” 就能夠成功編譯??梢?“Person p = null” 語句除了賦予變量p初值外,還在賦值前為變量p分配了內(nèi)存空間。

從上面的實驗中可以看出,Java中引用數(shù)據(jù)類型變量的內(nèi)存分配在賦初值時進行。用相同的方法測試Java中的基本數(shù)據(jù)類型變量,同樣可以發(fā)現(xiàn)變量在聲明時并沒有分配內(nèi)存,真正的內(nèi)存分配是在賦初值時進行的。

注上面的有錯誤,如果是int a;

a變量是分配了內(nèi)存單元的。a默認值是0;

所以基本類型在聲明的時候就分配了內(nèi)存單元。

以上這篇關(guān)于Java變量的聲明、內(nèi)存分配及初始化詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring+Quartz實現(xiàn)動態(tài)任務(wù)調(diào)度詳解

    Spring+Quartz實現(xiàn)動態(tài)任務(wù)調(diào)度詳解

    這篇文章主要介紹了Spring+Quartz實現(xiàn)動態(tài)任務(wù)調(diào)度詳解,最近經(jīng)?;趕pring?boot寫定時任務(wù),并且是使用注解的方式進行實現(xiàn),分成的方便將自己的類注入spring容器,需要的朋友可以參考下
    2024-01-01
  • Spring?Boot?Actuator使用說明

    Spring?Boot?Actuator使用說明

    SpringBootActuator?是一個用于監(jiān)控和管理?Spring?Boot?應(yīng)用程序的強大工具,通過引入依賴并配置,可以啟用默認的監(jiān)控接口,本文介紹Spring?Boot?Actuator的使用,感興趣的朋友一起看看吧
    2025-02-02
  • Java中的?stop?the?world是什么呢

    Java中的?stop?the?world是什么呢

    這篇文章主要介紹了Java中的stop?the?world是什么呢,從字面上講,就是停止這個世界,看到這個字眼,就覺得這是可怕的事情,那到底什么是stop-the-world,本文給大家詳細講解,感興趣的朋友跟隨小編一起看看吧
    2023-05-05
  • Java畫筆的簡單實用方法

    Java畫筆的簡單實用方法

    這篇文章主要介紹了Java畫筆的簡單實用方法,需要的朋友可以參考下
    2017-09-09
  • java中Vector類的常用方法詳解

    java中Vector類的常用方法詳解

    這篇文章主要為大家詳細介紹了java中Vector類的常用方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-02-02
  • 使用jpa原生sql@Query操作增刪改查

    使用jpa原生sql@Query操作增刪改查

    這篇文章主要介紹了使用jpa原生sql@Query操作增刪改查,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-06-06
  • IDEA中thymeleaf語法沒有提示的問題及解決

    IDEA中thymeleaf語法沒有提示的問題及解決

    這篇文章主要介紹了IDEA中thymeleaf語法沒有提示的問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • Java中多線程與并發(fā)_volatile關(guān)鍵字的深入理解

    Java中多線程與并發(fā)_volatile關(guān)鍵字的深入理解

    這篇文章主要給大家介紹了關(guān)于Java中多線程與并發(fā)_volatile關(guān)鍵字的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • Java用單向環(huán)形鏈表來解決約瑟夫環(huán)Josepfu問題

    Java用單向環(huán)形鏈表來解決約瑟夫環(huán)Josepfu問題

    如果把單鏈表的最后一個節(jié)點的指針指向鏈表頭部,而不是指向NULL,那么就構(gòu)成了一個單向循環(huán)鏈表,通俗講就是把尾節(jié)點的下一跳指向頭結(jié)點
    2021-10-10
  • Java獲得當(dāng)前時間前指定幾個小時具體時間的方法示例

    Java獲得當(dāng)前時間前指定幾個小時具體時間的方法示例

    這篇文章主要介紹了Java獲得當(dāng)前時間前指定幾個小時具體時間的方法,涉及java使用Calendar針對日期時間的相關(guān)運算與轉(zhuǎn)換操作技巧,需要的朋友可以參考下
    2017-08-08

最新評論

哈尔滨市| 镇康县| 渭南市| 昌平区| 高青县| 南江县| 通化县| 汨罗市| 科技| 景东| 甘洛县| 宜春市| 博爱县| 邵武市| 郓城县| 黔西| 中阳县| 高阳县| 宜宾市| 额敏县| 青海省| 深泽县| 稷山县| 凤山市| 上蔡县| 元朗区| 措勤县| 翁牛特旗| 通渭县| 莒南县| 靖西县| 阿城市| 云阳县| 隆安县| 岳普湖县| 太白县| 通化市| 安陆市| 西藏| 乾安县| 榆林市|