国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁 Java Java基礎(chǔ) Java中的物件是如何初始化的

Java中的物件是如何初始化的

Nov 21, 2019 pm 04:14 PM
java 初始化 物件

Java中的物件是如何初始化的

物件初始化的過程:

一:初始化類別

首先建立某個(gè)物件時(shí):

Dog dog = new Dog();

第一次存取某個(gè)類別的靜態(tài)方法或靜態(tài)欄位時(shí):

Dog.staticFields;

Java 解釋器就會(huì)去找類別的路徑,定位已經(jīng)編譯好的Dog.class 檔案。

二:取得類別的資源

然後 jvm 就會(huì)載入 Dog.class,產(chǎn)生一個(gè) class 物件。這時(shí)候如果有靜態(tài)的方法或變數(shù),靜態(tài)初始化動(dòng)作都會(huì)被執(zhí)行。這時(shí)候要注意啦,靜態(tài)初始化在程式運(yùn)行過程中只會(huì)在 Class 物件首次載入的時(shí)候運(yùn)行一次。這些資源都會(huì)放在 jvm 的方法區(qū)。

方法區(qū)又叫靜態(tài)區(qū),跟堆一樣,被所有的執(zhí)行緒共用。

方法區(qū)包含的都是在整個(gè)程式中永遠(yuǎn)唯一的元素,包含所有的 class 和 static 變數(shù)。

三:初始化物件?Dog dog = new Dog()

1、第一次建立Dog 物件先執(zhí)行上面的一二步

2、在堆上為Dog 物件分配足夠的儲(chǔ)存空間,所有屬性和方法都被設(shè)定成預(yù)設(shè)值(數(shù)字為0,字元為null,布林為false,而所有參考都設(shè)定成null )

3、執(zhí)行建構(gòu)子檢查是否有父類,如果有父類會(huì)先呼叫父類的建構(gòu)函數(shù),這裡假設(shè)Dog 沒有父類,執(zhí)行預(yù)設(shè)值欄位的賦值即方法的初始化動(dòng)作。

4、執(zhí)行建構(gòu)子。

推薦教學(xué):java開發(fā)入門

以上是Java中的物件是如何初始化的的詳細(xì)內(nèi)容。更多資訊請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願(yuàn)投稿,版權(quán)歸原作者所有。本站不承擔(dān)相應(yīng)的法律責(zé)任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請(qǐng)聯(lián)絡(luò)admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動(dòng)的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強(qiáng)大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級(jí)程式碼編輯軟體(SublimeText3)

以身例子從stdin中讀取 以身例子從stdin中讀取 Jul 27, 2025 am 04:15 AM

使用fmt.Scanf可讀取格式化輸入,適合簡(jiǎn)單結(jié)構(gòu)化數(shù)據(jù),但字符串遇空格截止;2.推薦使用bufio.Scanner逐行讀取,支持多行輸入、EOF檢測(cè)和管道輸入,並可處理掃描錯(cuò)誤;3.使用io.ReadAll(os.Stdin)一次性讀取全部輸入,適用於處理大塊數(shù)據(jù)或文件流;4.實(shí)時(shí)按鍵響應(yīng)需第三方庫如golang.org/x/term,常規(guī)場(chǎng)景使用bufio已足夠;實(shí)際建議:交互式簡(jiǎn)單輸入用fmt.Scan,行輸入或管道用bufio.Scanner,大塊數(shù)據(jù)用io.ReadAll,且始終處理

Java'可選”類的完整指南 Java'可選”類的完整指南 Jul 27, 2025 am 12:22 AM

Optional是Java8引入的用於更安全地處理可能為空值的容器類,其核心目的是將“值缺失”顯式化並減少NullPointerException風(fēng)險(xiǎn)。 1.使用Optional.empty()創(chuàng)建空實(shí)例,Optional.of(value)包裝非空值,Optional.ofNullable(value)安全包裝可能為null的值。 2.避免直接調(diào)用isPresent()與get()組合,應(yīng)優(yōu)先使用orElse()提供默認(rèn)值,orElseGet()實(shí)現(xiàn)延遲計(jì)算,默認(rèn)值開銷大時(shí)推薦此方法,orElse

python檢查字典中是否存在關(guān)鍵 python檢查字典中是否存在關(guān)鍵 Jul 27, 2025 am 03:08 AM

推薦使用in關(guān)鍵字檢查字典中是否存在某個(gè)鍵,因?yàn)樗?jiǎn)潔、高效且可讀性強(qiáng);2.不推薦使用get()方法判斷鍵是否存在,因?yàn)楫?dāng)鍵存在但值為None時(shí)會(huì)誤判;3.可以使用keys()方法,但多餘,因in默認(rèn)即檢查鍵;4.在需要取值且預(yù)期鍵通常存在時(shí),可用try-except捕獲KeyError異常。最推薦的做法是使用in關(guān)鍵字,既安全又高效,且不受值為None的影響,適合絕大多數(shù)場(chǎng)景。

SQL無服務(wù)器計(jì)算選項(xiàng) SQL無服務(wù)器計(jì)算選項(xiàng) Jul 27, 2025 am 03:07 AM

SQLServer本身不支持無服務(wù)器架構(gòu),但云平臺(tái)提供了類似方案。 1.Azure的ServerlessSQL池可直接查詢DataLake文件,按資源消耗計(jì)費(fèi);2.AzureFunctions結(jié)合CosmosDB或BlobStorage可實(shí)現(xiàn)輕量SQL處理;3.AWSAthena支持S3數(shù)據(jù)的標(biāo)準(zhǔn)SQL查詢,按掃描數(shù)據(jù)量計(jì)費(fèi);4.GoogleBigQuery通過FederatedQuery接近Serverless理念;5.若必須使用SQLServer功能,可選AzureSQLDatabase的無服

Java開發(fā)的VSCODE設(shè)置 Java開發(fā)的VSCODE設(shè)置 Jul 27, 2025 am 02:28 AM

InstallJDK,setJAVA_HOME,installJavaExtensionPackinVSCode,createoropenaMaven/Gradleproject,ensureproperprojectstructure,andusebuilt-inrun/debugfeatures;1.InstallJDKandverifywithjava-versionandjavac-version,2.InstallMavenorGradleoptionally,3.SetJAVA_HO

在Java應(yīng)用程序中優(yōu)化數(shù)據(jù)庫交互 在Java應(yīng)用程序中優(yōu)化數(shù)據(jù)庫交互 Jul 27, 2025 am 02:32 AM

useconnectionpoolingwithhikaricptoredatabaseconnectionsand andReduceOverhead.2.UsepreparedStatementTopReventsqlineventSqlinexptitionandAndimpRovequeryPerformance.3.fetchonlyrequireddatabyselectingspececlyselectingspeccecificcolumncolumnsandapplyingfiltersandpagagination.4.usisbatchopopererorsorsorsorsorsor.4.usebatchopoperorsorsor.4.usebatchopopoperorsorsor

Java雲(yún)集成模式與彈簧雲(yún) Java雲(yún)集成模式與彈簧雲(yún) Jul 27, 2025 am 02:55 AM

掌握SpringCloud集成模式對(duì)構(gòu)建現(xiàn)代分佈式系統(tǒng)至關(guān)重要。 1.服務(wù)註冊(cè)與發(fā)現(xiàn):通過Eureka或SpringCloudKubernetes實(shí)現(xiàn)服務(wù)自動(dòng)註冊(cè)與發(fā)現(xiàn),配合Ribbon或LoadBalancer進(jìn)行負(fù)載均衡;2.配置中心:使用SpringCloudConfig集中管理多環(huán)境配置,支持動(dòng)態(tài)加載與加密處理;3.API網(wǎng)關(guān):借助SpringCloudGateway統(tǒng)一入口、路由控制及權(quán)限管理,並支持限流與日誌記錄;4.分佈式鏈路追蹤:結(jié)合Sleuth與Zipkin實(shí)現(xiàn)請(qǐng)求全流程可視化追

了解Linux系統(tǒng)調(diào)用 了解Linux系統(tǒng)調(diào)用 Jul 27, 2025 am 12:16 AM

系統(tǒng)調(diào)用是用戶程序通過內(nèi)核接口請(qǐng)求特權(quán)操作的機(jī)制,其工作流程為:1.用戶程序調(diào)用封裝函數(shù);2.設(shè)置系統(tǒng)調(diào)用號(hào)和參數(shù)到寄存器;3.執(zhí)行syscall指令陷入內(nèi)核態(tài);4.內(nèi)核查表執(zhí)行對(duì)應(yīng)處理函數(shù);5.執(zhí)行完畢後返回用戶態(tài)??赏ㄟ^strace工具跟蹤、syscall()函數(shù)直接調(diào)用或查閱unistd.h頭文件查看調(diào)用號(hào),需注意系統(tǒng)調(diào)用與庫函數(shù)的區(qū)別在於是否進(jìn)入內(nèi)核態(tài),且頻繁調(diào)用會(huì)影響性能,應(yīng)通過合併I/O、使用mmap和epoll等方法優(yōu)化,理解系統(tǒng)調(diào)用有助於掌握Linux底層運(yùn)行機(jī)制。

See all articles