java中靜態屬性的描述,java靜態變量特點

本文目錄一覽:

java 靜態屬性

Department的位元組碼被加載的時候,也就是說必須有某個操作能用到這個類的時候。

靜態代碼塊是在位元組碼加載的時候執行的,並且是只執行一次的,同時這個類的靜態成員比如屬性或者方法也是這個時候初始化的,而不是說是在實例化對象的時候。

java靜態屬性是怎樣聲明的

java中的關鍵字static修飾的屬性就為靜態屬性,static修飾的方法就為靜態方法。不過一般靜態方法也會用public來修飾,原因是可以使所有的類方便的調用,調用方式:類名.方法名。

java的一大特性是:封裝,為了安全性一般屬性都是在本類中使用,靜態方法也不例外。

如不需在其他類調用的話靜態方法的聲明為:private static String str;

即靜態方法的聲明:範圍修飾符 static 數據類型 屬性名;

如果你要使用這個屬性的話還得給這個屬性初始化,即賦值。

JAVA什麼是類和對象的靜態屬性

靜態類的意思是可以不用實例化而直接使用。

比如我們使用color靜態類,就可以直接調用color類的方法和屬性,

而不用先構造一個類實例即對象,color

color

=

new

color();

因為這樣的語句看起來沒什麼意義。

面向對象的思想很豐富了,但是其精髓確實讓事情變的簡單,不需要的就可以不需要。

java的靜態類型有什麼特點

靜態屬性:隨着類的加載而加載,該屬性不屬於某個對象,屬於整個類

靜態方法:直接使用類名調用,靜態方法里不能訪問非靜態成員變量

靜態類:不能直接創建對象,不可被繼承

java靜態資源(靜態方法,靜態屬性)是程序一運行就加載到jvm中,還是當被調用的時候才進行加載呢?

當類第一次被調用時加載(靜態方法,靜態屬性的加載就是類加載) 。

1、類中的靜態屬性會被加入到類對象(也可以叫做類的模板,是類的描述) 的構造器中,靜態方法也會被加入到類對象中。

2、當第一次使用類時,JVM會通過類加載器,加載類對象,從而初始化靜態屬性,並裝入類的方法,包括靜態方法和實例方法(方法不會被調用,只是加載,從這個意義上來說,靜態方法和實例方法是類似的)。

3、當創建類的實例對象時,JVM會調用類的構造器,從而初始化類的屬性。

擴展資料:

類(包括靜態方法、屬性)加載過程:

一、加載。

根據一個類的全限定名(如cn.edu.hdu.test.HelloWorld.class)來讀取此類的二進制位元組流到JVM內部。

將位元組流所代表的靜態存儲結構轉換為方法區的運行時數據結構(hotspot選擇將Class對象存儲在方法區中,Java虛擬機規範並沒有明確要求一定要存儲在方法區或堆區中)轉換為一個與目標類型對應的java.lang.Class對象。

二、連接。

1、驗證。

驗證階段主要包括四個檢驗過程:文件格式驗證、元數據驗證、位元組碼驗證和符號引用驗證;

2、準備。

為類中的所有靜態變量分配內存空間,並為其設置一個初始值(由於還沒有產生對象,實例變量將不再此操作範圍內);

3、解析。

將常量池中所有的符號引用轉為直接引用(得到類或者字段、方法在內存中的指針或者偏移量,以便直接調用該方法)。這個階段可以在初始化之後再執行。

參考資料:

百度百科–Java類加載器

百度百科–JVM

java靜態屬性

靜態屬性,就是在類被裝入虛擬機就初始化的一些屬性,這些屬性不需要實例化類就可以通過類名直接使用。靜態屬性一般除了工具類,都是給所有類的實例共享的一些屬性。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/271702.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-16 19:23
下一篇 2024-12-16 19:23

相關推薦

  • int類型變量的細節與注意事項

    本文將從 int 類型變量的定義、聲明、初始化、範圍、運算和類型轉換等方面,對 int 類型變量進行詳細闡述和講解,幫助讀者更好地掌握和應用 int 變量。 一、定義與聲明 int…

    編程 2025-04-29
  • Python input參數變量用法介紹

    本文將從多個方面對Python input括號里參數變量進行闡述與詳解,並提供相應的代碼示例。 一、基本介紹 Python input()函數用於獲取用戶輸入。當程序運行到inpu…

    編程 2025-04-29
  • Centos7配置靜態ip

    本文將詳細闡述如何在Centos7系統中配置靜態ip。 一、查看網絡接口 在配置靜態ip之前,我們首先需要查看系統中的網絡接口,以確定我們需要配置的網卡是哪一個。 ifconfig…

    編程 2025-04-29
  • Python匿名變量的使用方法

    Python中的匿名變量是指使用「_」來代替變量名的特殊變量。這篇文章將從多個方面介紹匿名變量的使用方法。 一、作為佔位符 匿名變量通常用作佔位符,用於代替一個不需要使用的變量。例…

    編程 2025-04-29
  • 全面解讀數據屬性r/w

    數據屬性r/w是指數據屬性的可讀/可寫性,它在程序設計中扮演着非常重要的角色。下面我們從多個方面對數據屬性r/w進行詳細的闡述。 一、r/w的概念 數據屬性r/w即指數據屬性的可讀…

    編程 2025-04-29
  • Vant ContactList 增加屬性的實現方法

    在使用前端UI框架Vant中的ContactList組件時,我們有時需要為此組件增加一些個性化的屬性,來滿足我們特定的需求。那麼,如何實現ContactList組件的增加屬性功能呢…

    編程 2025-04-29
  • Python變量在內存中的存儲

    該文章將從多個方面對Python變量在內存中的存儲進行詳細闡述,包括變量的聲明和賦值、變量的引用和指向、內存地址的變化、內存管理機制等。 一、聲明和賦值 在Python中,變量聲明…

    編程 2025-04-29
  • Python變量類型用法介紹

    Python是一種解釋型編程語言,它提供了豐富的數據類型,包括數字、字符串、列表、元組、集合、字典等。Python變量類型的定義是Python程序開發的基礎,本文將從以下幾個方面對…

    編程 2025-04-28
  • Python print輸出變量

    Python是一種腳本語言,語法簡單易懂,目前被廣泛應用於數據處理、人工智能、web開發、遊戲開發等領域。其中print函數是Python中最常用的函數之一,用於將變量輸出到控制台…

    編程 2025-04-28
  • Python定義變量

    Python是一門高級編程語言,變量是Python編程中非常重要的一個概念。Python的變量定義方式非常簡單,可以在程序中隨時定義一個變量來存儲數據,這方便了整個程序的邏輯編寫,…

    編程 2025-04-28

發表回復

登錄後才能評論