java中靜態(tài)變量和實例變量的區(qū)別詳細介紹
運行效果:
控制臺效果:
==================================================
代碼部分
==================================================
/hello_test/src/com/b510/test/StaticTest.java
/**
*
*/
package com.b510.test;
/**
* 在程序運行時的區(qū)別:實例變量屬于某個對象的屬性,必須創(chuàng)建了實例對象,<br>
* 其中的實例變量才會被分配空間,才能使用這個實例變量。靜態(tài)變量不屬于某<br>
* 個實例對象,而是屬于類,所以也稱為類變量,只要程序加載了類的字節(jié)碼,<br>
* 不用創(chuàng)建任何實例對象,靜態(tài)變量就會被分配空間,靜態(tài)變量就可以被使用了。<br>
* 總之,實例變量必須創(chuàng)建對象后才可以通過這個對象來使用,靜態(tài)變量則可以<br>
* 直接使用類名來引用。例如,對于下面的程序,無論創(chuàng)建多少個實例對象,<br>
* 永遠都只分配了一個<code>staticInt</code>變量,并且每創(chuàng)建一個實例對象,<br>
* 這個<code>staticInt</code>就會加1;但是,每創(chuàng)建一個實例對象,就會分配一個<code>random</code>,<br>
* 即可能分配多個<code>random</code>,并且每個<code>random</code>的值都只自加了1次。<br>
*
* @author <a href="mailto:hongtenzone@foxmail.com">hongten</a>
* @date 2013-3-2
*/
public class StaticTest {
private static int staticInt = 2;
private int random = 2;
public StaticTest() {
staticInt++;
random++;
System.out.println("staticInt = "+staticInt+" random = "+random);
}
public static void main(String[] args) {
StaticTest test = new StaticTest();
StaticTest test2 = new StaticTest();
}
}
相關文章
SpringBoot動態(tài)生成接口實現(xiàn)流程示例講解
最近遇到一個需求,需要在程序運行過程中,可以動態(tài)新增接口,自定義接口參數(shù)名稱,基本類型,以及請求方法,請求頭等等。通過幾天的研究,找到了我需要的解決方案2023-01-01SpringCloud?Feign實現(xiàn)微服務之間相互請求問題
Feign是Netflix開發(fā)的聲明式、模板化的HTTP客戶端,?Feign可以幫助我們更快捷、優(yōu)雅地實現(xiàn)微服務之間的調用,這篇文章主要介紹了SpringCloud?Feign實現(xiàn)微服務之間相互請求,需要的朋友可以參考下2022-06-06SpringBoot使用@PostConstruct注解導入配置方式
這篇文章主要介紹了SpringBoot使用@PostConstruct注解導入配置方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-11-11使用Jenkins一鍵打包部署SpringBoot項目的步驟詳解
任何簡單操作的背后,都有一套相當復雜的機制,本文將以SpringBoot應用的在Docker環(huán)境下的打包部署為例,詳細講解如何使用Jenkins一鍵打包部署SpringBoot應用,文中通過圖文結合講解的非常詳細,需要的朋友可以參考下2023-11-11spring boot 自定義starter的實現(xiàn)教程
下面小編就為大家分享一篇spring boot 自定義starter的實現(xiàn)教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2017-12-12