成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Java知識(shí)點(diǎn)總結(jié)(內(nèi)存分析)

lvzishen / 1744人閱讀

摘要:知識(shí)點(diǎn)總結(jié)內(nèi)存分析知識(shí)點(diǎn)總結(jié)面向?qū)ο髮?duì)象內(nèi)存類是創(chuàng)建對(duì)象的模板對(duì)象的使用時(shí)通過(guò)引用進(jìn)行的基本數(shù)據(jù)類型直接賦值,引用類型傳遞的是一個(gè)地址棧存放局部變量堆存放出來(lái)的對(duì)象方法區(qū)存放類的信息代碼變量常量池字符串常量等張三王武李四垃圾回收機(jī)制對(duì)象空間

Java知識(shí)點(diǎn)總結(jié)(內(nèi)存分析)

@(Java知識(shí)點(diǎn)總結(jié))[Java, Java面向?qū)ο骫

[toc]

對(duì)象內(nèi)存 類是創(chuàng)建對(duì)象的模板

Java對(duì)象的使用時(shí)通過(guò)引用進(jìn)行的
基本數(shù)據(jù)類型直接賦值,引用類型傳遞的是一個(gè)地址
棧:存放局部變量
堆:存放new出來(lái)的對(duì)象
方法區(qū):存放類的信息(代碼) 、static變量、常量池(字符串常量)等...

Student s1 = new Student();
s1.name="張三";
s1.study();
s1.sayHello("王武");
 
Student s2 = new Student();
s2.age = 18;
s2.name="李四";

垃圾回收機(jī)制(Garbage Collection)

對(duì)象空間的分配:使用new關(guān)鍵字即可

對(duì)象空間的釋放:將對(duì)象賦值null即可。垃圾回收器將負(fù)責(zé)回收所有"不可達(dá)"對(duì)象的內(nèi)存空間

要點(diǎn):程序員無(wú)權(quán)調(diào)用垃圾回收器
程序員可以通過(guò)System.gc() 通知GC運(yùn)行,但是Java規(guī)范并不能保證立即運(yùn)行
finalize方法,是java提供程序員用來(lái)釋放對(duì)象,或資源的方法,但是盡量少用

一個(gè)對(duì)象沒(méi)有被引用,就會(huì)被Java垃圾回收機(jī)制回收

static內(nèi)存

在類中,用static聲明的成員變量為靜態(tài)變量,或者叫做:類屬性,類變量,從屬于類,給對(duì)象分配的內(nèi)存里沒(méi)有

它為類的公用變量,屬于類,被該類的所有實(shí)例共享,在類被載入時(shí)被顯示初始化

對(duì)于該類的所有對(duì)象來(lái)說(shuō),static成員變量只有一份,被該類的所有對(duì)象共享

可以使用"對(duì)象.類屬性"來(lái)調(diào)用。不過(guò)一般都是用"類名.類屬性"

static變量置于方法區(qū)中

用static聲明的方法為靜態(tài)方法

類名.方法名調(diào)用
在調(diào)用該方法時(shí),不會(huì)將對(duì)象的引用傳遞給它,所以在static方法中,不可訪問(wèn)非static的成員

靜態(tài)初始化代碼塊

static{

...

}

如果希望加載后,對(duì)整個(gè)類進(jìn)行某些初始化操作,可以使用static初始化塊

是在類初始化時(shí)執(zhí)行,不是在創(chuàng)建對(duì)象時(shí)執(zhí)行

靜態(tài)初始化塊中不能訪問(wèn)非static成員

執(zhí)行順序:上溯到Object類,先執(zhí)行Object的靜態(tài)初始化塊,再向下執(zhí)行子類的靜態(tài)初始化塊,直到我們的類的靜態(tài)初始化塊為止

多態(tài)內(nèi)存

多態(tài)性是OOP的一個(gè)重要特性,主要是用來(lái)實(shí)現(xiàn)動(dòng)態(tài)聯(lián)編的,換句話說(shuō),就是程序的最終狀態(tài)只有在執(zhí)行過(guò)程中才被決定而非在編譯期間就決定了。

這對(duì)于大型信息來(lái)說(shuō)能提高系統(tǒng)的靈活性和擴(kuò)展性

引用變量的兩種類型:

編譯時(shí)類型 (模糊一點(diǎn),一般是一個(gè)父類)
由聲明時(shí)的類型決定

運(yùn)行時(shí)類型(運(yùn)行時(shí),具體哪個(gè)子類就是哪個(gè)子類)
由實(shí)際對(duì)應(yīng)的對(duì)象類型決定

多態(tài)的存在要有3個(gè)必要條件:

要有繼承

要有方法重寫(xiě)

父類引用指向子類對(duì)象

子類如果重寫(xiě)了父類中的方法,方法調(diào)用的時(shí)候與實(shí)際類類型相綁定(傳遞的隱式參數(shù)this指向的開(kāi)辟內(nèi)存空間的類的對(duì)象,而不是父類的對(duì)象)

public class Test {
  public static void testAnimalVoice(Animal c) {
    c.voice();
    if (c instanceof Cat) {
     ((Cat) c).catchMouse();
    }
  }
 
  public static void main(String[] args) {
    Animal a = new Cat();
    Cat a2 = (Cat) a;
    testAnimalVoice(a);
  }
}
 
class Animal {
  void voice() {
    System.out.println("發(fā)出動(dòng)物的叫聲");
  }
}
 
class Cat extends Animal {
  private String name = "Tom";
  void catchMouse() { //方法存在隱式參數(shù)this和super
    super.voice();
    System.out.println(this.name+"抓老鼠");
  }
}

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/69144.html

相關(guān)文章

  • 內(nèi)存 問(wèn)題- 收藏集 - 掘金

    摘要:然而,中依然有可能發(fā)生內(nèi)存泄漏。所以你的安卓快速定位解決內(nèi)存泄漏掘金昨天是個(gè)好日子,程序員的節(jié)日,在這里給所有的程序員送上一份遲到的祝福。應(yīng)用內(nèi)存泄漏的定位分析與解決策略掘金,大家好,我是。 Android 性能優(yōu)化之巧用軟引用與弱引用優(yōu)化內(nèi)存使用 - Android - 掘金前言: 從事Android開(kāi)發(fā)的同學(xué)都知道移動(dòng)設(shè)備的內(nèi)存使用是非常敏感的話題,今天我們來(lái)看下如何使用軟引用與弱...

    TIGERB 評(píng)論0 收藏0
  • 你和阿里資深架構(gòu)師之間,差的不僅僅是年齡(進(jìn)階必看)

    摘要:導(dǎo)讀閱讀本文需要有足夠的時(shí)間,筆者會(huì)由淺到深帶你一步一步了解一個(gè)資深架構(gòu)師所要掌握的各類知識(shí)點(diǎn),你也可以按照文章中所列的知識(shí)體系對(duì)比自身,對(duì)自己進(jìn)行查漏補(bǔ)缺,覺(jué)得本文對(duì)你有幫助的話,可以點(diǎn)贊關(guān)注一下。目錄一基礎(chǔ)篇二進(jìn)階篇三高級(jí)篇四架構(gòu)篇五擴(kuò) 導(dǎo)讀:閱讀本文需要有足夠的時(shí)間,筆者會(huì)由淺到深帶你一步一步了解一個(gè)資深架構(gòu)師所要掌握的各類知識(shí)點(diǎn),你也可以按照文章中所列的知識(shí)體系對(duì)比自身,對(duì)自己...

    huaixiaoz 評(píng)論0 收藏0
  • Java學(xué)習(xí)路線總結(jié),搬磚工逆襲Java架構(gòu)師(全網(wǎng)最強(qiáng))

    摘要:哪吒社區(qū)技能樹(shù)打卡打卡貼函數(shù)式接口簡(jiǎn)介領(lǐng)域優(yōu)質(zhì)創(chuàng)作者哪吒公眾號(hào)作者架構(gòu)師奮斗者掃描主頁(yè)左側(cè)二維碼,加入群聊,一起學(xué)習(xí)一起進(jìn)步歡迎點(diǎn)贊收藏留言前情提要無(wú)意間聽(tīng)到領(lǐng)導(dǎo)們的談話,現(xiàn)在公司的現(xiàn)狀是碼農(nóng)太多,但能獨(dú)立帶隊(duì)的人太少,簡(jiǎn)而言之,不缺干 ? 哪吒社區(qū)Java技能樹(shù)打卡?【打卡貼 day2...

    Scorpion 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<