java學(xué)習(xí)筆記04---程序執(zhí)行的內(nèi)存分析

      網(wǎng)友投稿 754 2025-03-31

      31.1 JAVA程序運(yùn)行的內(nèi)存分析


      棧:

      1.? ??每個(gè)線程私有,不能實(shí)現(xiàn)線程間的共享!

      2.? ??局部變量放置于棧中。

      3.? ??棧是由系統(tǒng)自動(dòng)分配,速度快!棧是一個(gè)連續(xù)的內(nèi)存空間!

      堆:

      1.? ??放置new出來(lái)的對(duì)象!

      2.? ??堆是一個(gè)不連續(xù)的內(nèi)存空間,分配靈活,速度慢!

      方法區(qū)(也是堆):

      1.? ??被所有線程共享!

      2.? ??用來(lái)存放程序中永遠(yuǎn)是不變或唯一的內(nèi)容。(類代碼信息、靜態(tài)變量、字符串常量)

      【注】本次內(nèi)存分析,我們的主要目的是讓大家了解基本的內(nèi)存概念。類加載器、Class對(duì)象這些更加詳細(xì)的內(nèi)容,我們將在后面專門(mén)講反射的課程里面講。

      引用類型的概念

      1.? ??java中,除了基本數(shù)據(jù)類型之外的其他類型稱之為引用類型。

      2.? ??java中的對(duì)象是通過(guò)引用來(lái)操作的。(引用:reference)

      .? ??說(shuō)白了,引用指的就是對(duì)象的地址!

      屬性(field,或者叫成員變量)

      1.? ??屬性用于定義該類或該類對(duì)象包含的數(shù)據(jù)或者說(shuō)靜態(tài)屬性。

      2.? ??屬性作用范圍是整個(gè)類體。

      3.? ??屬性的默認(rèn)初始化:

      在定義成員變量時(shí)可以對(duì)其初始化,如果不對(duì)其初始化,Java使用默認(rèn)的值對(duì)其初始化。(數(shù)值:0,0.0???char:\u0000,??boolean:false,??所有引用類型:null)

      4.? ??屬性定義格式:

      [修飾符]??屬性類型??屬性名?=?[默認(rèn)值]

      31.2 類的方法

      方法是類和對(duì)象動(dòng)態(tài)行為特征的抽象。方法很類似于面向過(guò)程中的函數(shù)。面向過(guò)程中,函數(shù)是最基本單位,整個(gè)程序有一個(gè)個(gè)函數(shù)調(diào)用組成;面向?qū)ο?/a>中,整個(gè)程序的基本單位是類,方法是從屬于類或?qū)ο蟮摹?/p>

      方法定義格式:

      [修飾符]??方法返回值類型??方法名(形參列表)?{

      //?n條語(yǔ)句

      }

      java對(duì)象的創(chuàng)建和使用

      3? ??必須使用?new?關(guān)鍵字創(chuàng)建對(duì)象。

      2? ??Person?person=?new?Person?();

      3? ???使用對(duì)象(引用)?.?成員變量來(lái)引用對(duì)象的成員變量。

      2? ??person.age

      3? ???使用對(duì)象(引用)?.?方法(參數(shù)列表)來(lái)調(diào)用對(duì)象的方法。

      2? ??person.?setAge(23)

      31.3 課堂代碼和內(nèi)存分析結(jié)果

      package?cn.bjsxt.oop;

      public?class?Student?{

      //靜態(tài)的數(shù)據(jù)

      String?name;

      int?id;????//學(xué)號(hào)

      int?age;

      java學(xué)習(xí)筆記04---程序執(zhí)行的內(nèi)存分析

      String?gender;

      int?weight;

      //動(dòng)態(tài)的行為

      public?void?study(){

      System.out.println(name+"在學(xué)習(xí)");

      }

      public?void?sayHello(String?sname){

      System.out.println(name+"向"+sname+"說(shuō):你好!");

      }

      }

      package?cn.bjsxt.oop;

      public?class?Test1?{

      public?static?void?main(String[]?args)?{

      //通過(guò)類加載器Class?Loader加載Student類。?加載后,在方法區(qū)中就有了Student類的信息!

      Student?s1?=?new?Student();

      s1.name?=?"高琪";

      s1.study();

      s1.sayHello("馬士兵");

      Student?s2?=?new?Student();

      s2.age?=?18;

      s2.name="老高";

      }

      }

      上面Test1類執(zhí)行的內(nèi)存分析圖如下(更加詳細(xì)的分析流程,參見(jiàn)31集視頻):

      Java 任務(wù)調(diào)度

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:在WPS表格中如何添加頁(yè)眉頁(yè)腳(wps表格頁(yè)眉頁(yè)腳設(shè)置)
      下一篇:訂單進(jìn)度隨時(shí)查看軟件(1分鐘之前已更新)
      相關(guān)文章
      亚洲精品色午夜无码专区日韩| 亚洲国产成人VA在线观看| 国产成人亚洲综合| 国产成人+综合亚洲+天堂| 亚洲成人黄色在线| 久久久久久亚洲AV无码专区| 亚洲大尺度无码无码专区| 国产精品国产亚洲精品看不卡| 亚洲午夜无码久久久久| 亚洲国产精品久久久天堂| 亚洲日韩欧洲无码av夜夜摸| 亚洲精品无码mv在线观看网站| 亚洲无人区午夜福利码高清完整版| 奇米影视亚洲春色| 亚洲精品无码av人在线观看| 亚洲av无码一区二区三区网站 | 国产人成亚洲第一网站在线播放| 亚洲乱码卡三乱码新区| 亚洲一区二区三区在线网站 | 久久亚洲中文字幕精品一区| 日日噜噜噜噜夜夜爽亚洲精品| 国产成人麻豆亚洲综合无码精品| 亚洲婷婷五月综合狠狠爱| 亚洲精品乱码久久久久久| 亚洲AV成人片色在线观看高潮| 久久精品国产亚洲av麻豆小说 | 亚洲欧洲国产成人综合在线观看| 老司机亚洲精品影视www| 亚洲色成人WWW永久网站| 亚洲AV日韩AV天堂一区二区三区| 亚洲精品美女久久久久| 2020国产精品亚洲综合网| 亚洲国产精品18久久久久久| www亚洲一级视频com| 亚洲自偷自偷偷色无码中文| 黑人精品videos亚洲人| 久久久久久亚洲Av无码精品专口| 亚洲午夜精品一区二区公牛电影院 | 亚洲视频手机在线| 国产亚洲精品影视在线| 在线观看免费亚洲|