程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> java中靜態變量和實例變量的區別詳細介紹

java中靜態變量和實例變量的區別詳細介紹

編輯:JAVA編程入門知識

運行效果:

控制台效果:

==================================================

代碼部分

==================================================

/hello_test/src/com/b510/test/StaticTest.java
代碼如下:

/**
  *
  */
 package com.b510.test;

 /**
  * 在程序運行時的區別:實例變量屬於某個對象的屬性,必須創建了實例對象,<br>
  * 其中的實例變量才會被分配空間,才能使用這個實例變量。靜態變量不屬於某<br>
  * 個實例對象,而是屬於類,所以也稱為類變量,只要程序加載了類的字節碼,<br>
  * 不用創建任何實例對象,靜態變量就會被分配空間,靜態變量就可以被使用了。<br>
  * 總之,實例變量必須創建對象後才可以通過這個對象來使用,靜態變量則可以<br>
  * 直接使用類名來引用。例如,對於下面的程序,無論創建多少個實例對象,<br>
  * 永遠都只分配了一個<code>staticInt</code>變量,並且每創建一個實例對象,<br>
  * 這個<code>staticInt</code>就會加1;但是,每創建一個實例對象,就會分配一個<code>random</code>,<br>
  * 即可能分配多個<code>random</code>,並且每個<code>random</code>的值都只自加了1次。<br>
  *
  * @author <a href="mailto:[email protected]">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();
     }
 }

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved