摘要:在變成了,但是又賦成了變成了,但是由于后面沒有手動(dòng)賦值,所以直接跳過了靜態(tài)代碼在類初始化的時(shí)候調(diào)用且只執(zhí)行一次在類靜態(tài)變量初始化和賦值以后靜態(tài)代碼塊在調(diào)用靜態(tài)常量不會(huì)引起初始化。
public class Test { public static Test1 t = new Test1(); public static int a = 0; public static int b; public static void main(String[] arg) { System.out.println(Test.a);//a在Test1變成了1,但是又賦成了0 System.out.println(Test.b);//b變成了1,但是由于b后面沒有手動(dòng)賦值,所以JAVA直接跳過了 } } class Test1 { public Test1() { Test.a++; Test.b++; } }
靜態(tài)代碼在類初始化的時(shí)候調(diào)用且只執(zhí)行一次(在類靜態(tài)變量初始化和賦值以后)靜態(tài)代碼塊在調(diào)用靜態(tài)常量不會(huì)引起初始化。
class Test{ static{ System.out.println("初始化"); } public final static String str="ffffd"; } public class Main { public static void main(String[] args) { System.out.println(Test.str); } }
輸出ffffd。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/66160.html
摘要:可以直接用接口名訪問。其他類也稱為外部類。汽車外部類發(fā)動(dòng)機(jī)內(nèi)部類內(nèi)部類的分類內(nèi)部類分為成員內(nèi)部類與局部?jī)?nèi)部類。我們定義內(nèi)部類時(shí),就是一個(gè)正常定義類的過程,同樣包含各種修飾符繼承與實(shí)現(xiàn)關(guān)系等。并且日常項(xiàng)目的分工也是以包作為邊界。 01final關(guān)鍵字概念 * A: 概述 繼承的出現(xiàn)提高了代碼的復(fù)用性,并方便開發(fā)。但隨之也有問題,有些類在描述完之后,不想被繼承, ...
摘要:對(duì)象的引用關(guān)鍵字總是指向調(diào)用該方法的對(duì)象。根據(jù)出現(xiàn)位置的不同,作為對(duì)象的默認(rèn)引用有兩種情形。構(gòu)造器中引用該構(gòu)造器正在初始化的對(duì)象。如果同一個(gè)類中包含了兩個(gè)或兩個(gè)以上方法的方法名相同,但形參列表不同,則被稱為方法重載。 類和對(duì)象 定義類 面向?qū)ο蟮某绦蛟O(shè)計(jì)過程中有兩個(gè)重要概念:類(class)和對(duì)象(object,也被稱為實(shí)例,instance),其中類是某一批對(duì)象的抽象,可以把類理解成...
摘要:對(duì)子類成員數(shù)據(jù)按照它們聲明的順序初始化,執(zhí)行子類構(gòu)造函數(shù)的其余部分。參考類的初始化順序引了大半類加載的時(shí)機(jī) jvm系列 垃圾回收基礎(chǔ) JVM的編譯策略 GC的三大基礎(chǔ)算法 GC的三大高級(jí)算法 GC策略的評(píng)價(jià)指標(biāo) JVM信息查看 GC通用日志解讀 jvm的card table數(shù)據(jù)結(jié)構(gòu) Java類初始化順序 Java對(duì)象結(jié)構(gòu)及大小計(jì)算 Java的類加載機(jī)制 Java對(duì)象分配簡(jiǎn)要流程 年老...
摘要:沒有關(guān)鍵字修飾的如實(shí)例變量非靜態(tài)變量非靜態(tài)代碼塊初始化實(shí)際上是會(huì)被提取到類的構(gòu)造器中被執(zhí)行的,但是會(huì)比類構(gòu)造器中的代碼塊優(yōu)先執(zhí)行到,非靜態(tài)實(shí)例變量非靜態(tài)代碼塊的地位是相等的,它們將按順序被執(zhí)行。 閱讀原文:Java代碼執(zhí)行順序 程序中代碼執(zhí)行的順序非常重要,稍有不慎便會(huì)是程序運(yùn)行出錯(cuò),那么我將結(jié)合實(shí)例來分析代碼中的執(zhí)行。 名詞解釋 首先了解幾個(gè)名詞: 非靜態(tài)代碼塊 直接由 { } 包起...
摘要:知識(shí)點(diǎn)總結(jié)面向?qū)ο笾R(shí)點(diǎn)總結(jié)面向?qū)ο竺嫦驅(qū)ο蟾拍钍窍鄬?duì)于面向過程而言,過程其實(shí)就是函數(shù),對(duì)象是將函數(shù)和屬性進(jìn)行了封裝。指向了該對(duì)象關(guān)鍵字代表對(duì)象。靜態(tài)變量所屬于類,所以也稱為類變量成員變量存在于堆內(nèi)存中。 Java知識(shí)點(diǎn)總結(jié)(面向?qū)ο螅?@(Java知識(shí)點(diǎn)總結(jié))[Java, Java面向?qū)ο骫 [toc] 面向?qū)ο蟾拍?是相對(duì)于面向過程而言,過程其實(shí)就是函數(shù),對(duì)象是將函數(shù)和屬性進(jìn)行了封...
摘要:根據(jù)出現(xiàn)的位置,作為對(duì)象的默認(rèn)引用有兩種情形構(gòu)造器中引用該構(gòu)造器正在初始化的對(duì)象。在構(gòu)造器中代表該構(gòu)造器正在初始化的對(duì)象。用于限定該對(duì)象調(diào)用它從父類得到的實(shí)例變量和方法。 子類繼承父類就可以繼承到父類的成員變量和方法。如果訪問控制允許,子類實(shí)例可以直接調(diào)用父類里定義的方法。 如果多個(gè)重載的構(gòu)造器里包含了相同的初始化代碼,則可以把這些初始化代碼放置在普通代碼塊里完成,初始化塊總在構(gòu)...
閱讀 2186·2019-08-29 16:53
閱讀 2766·2019-08-29 16:07
閱讀 2124·2019-08-29 13:13
閱讀 3319·2019-08-26 13:57
閱讀 1393·2019-08-26 13:31
閱讀 2513·2019-08-26 13:22
閱讀 1292·2019-08-26 11:43
閱讀 2150·2019-08-23 17:14