java構造塊_java中的靜態代碼塊、構造代碼塊、構造方法詳解

運行下面這段代碼,觀察其結果:

package com.test;

public class HelloB extends HelloA {

public HelloB() {

}

{

System.out.println("I'm B class");

}

static {

System.out.println("static B");

}

public static void main(String[] args) {

new HelloB();

}

}

class HelloA {

public HelloA() {

}

{

System.out.println("I'm A class");

}

static {

System.out.println("static A");

}

}

結果如下:

static A

static B

I'm A class

I'm B class

解析:

1.靜態代碼塊:是在類的加載過程的第三步初始化的時候進行的,主要目的是給類變量賦予初始值。

2.構造代碼塊:是獨立的,必須依附載體才能運行,Java會把構造代碼塊放到每種構造方法的前面,用于實例化一些共有的實例變量,減少代碼量。

3.構造方法:用于實例化變量。

總結:

1是類級別的,2、3是實例級別的,所以1要優先2、3.

它們的執行順序是1>2>3;

以上這篇java中的靜態代碼塊、構造代碼塊、構造方法詳解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/257613.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/257613.shtml
英文地址,請注明出處:http://en.pswp.cn/news/257613.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

推薦一個不錯的 Chrome 插件,百變皮膚,還可以去廣告

今天在這里給大家推薦一個非常棒,非常不錯的 Chrome 插件,功能實在是強大又好玩,讓你在瀏覽器中可以如孫悟空一樣72變,再不濟,如果你不會用,不會自定義寫 CSS 樣式,也能夠做到如豬八戒般 36 變。…

【轉】DB2 常用命令

1、 打開命令行窗口   #db2cmd 2、 打開控制中心   # db2cmd db2cc 3、 打開命令編輯器  db2cmd db2ce 操作數據庫命令 4、 啟動數據庫實例   #db2start 5、 停止數據庫實例   #db2stop  如果你不能停止數據庫由于激活的連接,在運行db2stop前執行db2 force ap…

c#調用R

R.NET使用文檔 介紹 本頁面涉及R.NET1.5.13。 1.5.13版本在功能上等同于1.5.12,但可作為一個包在NuGet.org上獲得。 R.NET使.NET框架與R統計語言在同一進程進行互操作。 R.NET需要.NET Framework 4的并有R環境中安裝的本地的DLL。您可以使用R.NET用在.NET的任何語言…

java applet 文本框_Java Applet 文本框 TextField 小例 | 學步園

一個Java Applet程序中必須有一個類是Applet類的子類,成為該子類是Java Applet的主類, 并且必須是public class。 Applet類是包java.applet中的一個類, 同時它還是包java.awt中Container(容器)類的子類。因此Java Applet的主類的實例是一個容…

python界面工具pyqt基礎教程

這里有一份很詳細的中文翻譯供我們學習pyqt,很適合初學者和中級學者,直接丟傳送門,不多說 http://www.qaulau.com/books/PyQt4_Tutorial/introduction.html轉載于:https://www.cnblogs.com/semishigure/p/7451689.html

博客園客戶端(睡睡版iphone)源碼

1.關于 https://itunes.apple.com/us/app/shui-shui-bo-ke-yuan/id512394144?ls1&mt8 項目目前為V3.0版,也是我開發的最新版,目前已無法在appstore下載,項目介紹:http://www.cnblogs.com/bandy/p/3509482.html 2.現狀 目前本…

Spring MVC不要在@Service bean中保存狀態

先看這么一段代碼: Service public class AccountService {private String message;public void foo1() {if (true) {this.message "a";} else {this.message "b";}}public void foo2() {// 改動this.message的代碼...// ... ...} }假設你打算…

java class 關鍵字_java關鍵字及其作用

一、 關鍵字總覽:訪問控制privateprotectedpublic類,方法和變量修飾符abstractclassextendsfinalimplementsinterfacenativenewstaticstrictfpsynchronizedtransientvolatile程序控制breakcontinuereturndowhileifelseforinstanceofswitchcasedefault錯誤處理trycatchthrowthro…

3.過濾數據 ---SQL

一、使用WHERE子句 SELECT prod_name, prod_price FROM Products WHERE prod_price 3.49; 輸出▼ prod_name prod_price ------------------- ---------- Fish bean bag toy 3.49 Bird bean bag toy 3.49 Rabbit bean bag toy 3.49 分析▼ 這條語句從products表中檢索兩個列&a…

IOS-C語言第8天,Struct (結構體)

轉載于:https://www.cnblogs.com/xiangrongsu/p/4309160.html

Win2D 入門教程 VB 中文版 - 防止內存泄漏

避免內存泄漏 本文從微軟官方文檔翻譯 http://microsoft.github.io/Win2D/html/RefCycles.htm 如果文檔有問題,可以在 https://github.com/Nukepayload2/Win2dDocVB發 Issue,也可以直接回復。 當在托管的 XAML 應用程序中使用 Win2D 控件,需要…

java concurrent 鎖_java并發機制鎖的類型和實現

synchronized 和 volatile,是最基礎的兩個鎖!volatile是輕量級鎖,它在多核處理器開發中保證了共享變量的可見性。即當一個線程修改一個共享變量時,其他線程能夠讀到這個修改的值。它比syncronized使用和成本更低。要說volatile的實…

JAXB和XStream比較

這兩東東本質上是有差別的,JAXB稱為OX binding工具,XStream應該算序列化工具,但OX binding工具也會marshall和unmarshall,所以包含了序列化這一部分。序列化工具不一定需要提供binding的功能。既然都玩序列化,那就簡單…

【起航計劃 011】2015 起航計劃 Android APIDemo的魔鬼步伐 10 App-Activity-Reorder Activities 后退棧 Intent FLAG...

Reorder Activities 示例有四個相關的Activitives: ReorderOnLaunch, ReorderTwo,ReorderThree, ReorderFour。其中ReorderOnLaunch為主Activity,ReorderOnLaunch啟動ReorderTwo ,ReorderTwo啟動 ReorderThree,ReorderThree啟動 ReorderFour。…

java date dateformat_java中Date與DateFormat的格式輸出

一、DateFormatjava.text.DateFormat使用 getDateInstance 來獲取該國家/地區的標準日期格式。另外還提供了一些其他靜態工廠方法。使用 getTimeInstance 可獲取該國家/地區的時間格式。使用 getDateTimeInstance 可獲取日期和時間格式。可以將不同選項傳入這些工廠方法&#x…

spartan6不能直接把時鐘連到IO上

1、問題的提出:spartan6中不允許時鐘信號直接連到IO口上面? 2、解決辦法:ODDR2的使用 ODDR2Primitive: Double Data Rate Output D Flip-Flop with Optional Data Alignment, Clock Enable and Programmable Synchronous or Asynchronous Set…

STL容器及適配器

STL容器 1.序列式容器 : vector,deque,list。 每個元素都有固定的位置(取決于插入的時機和位置,與元素值無關)。 vector 特點: 將一個元素置于一個動態數組中加以管理,可以隨機存取元…

Html5 Canvas斗地主游戲

過完年來公司,沒什么事,主管說研究下html5 游戲,然后主管就給了一個斗地主的demo,隨后我就開始看代碼, 現在我看了html5以及canvas相關知識和斗地主的demo后,自己用demo上的素材試著寫了個斗地主&#xff0…

java流的傳遞方式是_如何在方法中流式傳輸Java List(Varargs)的值?

我有以下方法:public static List getValuesExclusion(A exclusion) {return Arrays.stream(values()).filter(item -> item ! exclusion).collect(Collectors.toList());}//this function returns enum list of A types that has no A typeexclusion現在我想將它…

JAVA作業——JAVA課程的總結及學習計劃

JAVA作業——JAVA課程的總結及學習計劃 NO.1 總結 在上一年的學習中,對JAVA語言比較陌生,英語基礎不好,so學習起來有點困難,對JAVA的一些語法和編程記得比較少。 NO.2 計劃 對過去一年的認真反思之后,我的計劃如下&…