JAVA入门级教学之(static关键字)
生活随笔
收集整理的這篇文章主要介紹了
JAVA入门级教学之(static关键字)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?static關鍵字:
package com.lbj.javase07; /*** "中國人"類* * 什么時候成員變量聲明為實例變量呢?* -所有對象都有這個屬性,但是這個屬性的值會隨著對象的變化而變化【不同對象的這個屬性具體的值不同】* * 什么時候成員變量聲明為靜態變量呢?* -所有對象都有這個屬性,并且所有對象的這個屬性的值是一樣的,建議定義為靜態變量,節省內存的開銷* * 靜態變量在類加載的時候初始化,內存在方法區中開辟。訪問的時候不需要創建對象,直接使用"類名.靜態變量名"的方式訪問。* * 關于java中的static關鍵字:* 1.static英語單詞翻譯為靜態的* 2.static修飾的方法是靜態方法* 3.static修飾的變量是靜態變量* 4.所有static修飾的元素都稱為靜態的,都可以使用"類名."的方式訪問,當然也可以用"引用."的方式訪問【但不建議】* * @author 14811**/ public class Chinese {//身份證號【每一個對象的身份證號不同】//實例變量String id;//姓名【每一個對象的姓名不同】//實例變量String name;//國籍【每一個對象由于都是由"chinese類"實例化的,所以每一個中國人的國籍都是"中國"】//無論通過Chinese類實例化多少個java對象,這些java對象的國籍都是"中國"//實例變量【實例變量是一個java對象就有一份,100個java對選哪個,就有100個country】,分析這種設計方式有什么缺點?//實例變量存儲java對象內部,在堆內存中,在構造方法執行的時候初始化//String country;//所以需要統一一個模板,屬于中國人的模板//國籍【所有對象國籍一樣,這種特征屬于類級別的特征,可以提升為整個模板的特征,可以在變量前添加static關鍵字修飾】//靜態變量,靜態變量在類加載的時候初始化,不需要創建對象,內存就開辟了。//靜態變量存儲在方法區內存中static String country="中國";//構造函數public Chinese(){/** this.id=null;* this.name=null;* this.country=null;*/}public Chinese(String id,String name){this.id=id;this.name=name;}}?創建一個測試類:
package com.lbj.javase07;public class ChineseTest {public static void main(String[] args) {// TODO Auto-generated method stub//創建中國人對象1 // Chinese zhangsan=new Chinese("1","張三","中國"); // System.out.println(zhangsan.id+","+zhangsan.name+","+zhangsan.country); // // Chinese lisi=new Chinese("2","李四","中國"); // System.out.println(lisi.id+","+lisi.name+","+lisi.country); // // Chinese wangwu=new Chinese("3","王五","中國"); // System.out.println(wangwu.id+","+wangwu.name+","+wangwu.country);Chinese zhangsan=new Chinese("1","張三","中國");System.out.println(zhangsan.id+","+zhangsan.name+","+Chinese.country);Chinese lisi=new Chinese("2","李四","中國");System.out.println(lisi.id+","+lisi.name+","+Chinese.country);Chinese wangwu=new Chinese("3","王五","中國");System.out.println(wangwu.id+","+wangwu.name+","+Chinese.country);System.out.println(Chinese.country);//這樣可以調用System.out.println(zhangsan.country);//這樣也可以調用zhangsan=null;//所有靜態的數據都是可以采用類名. ,也可以采用"引用."的方式訪問//采用引用.的方式訪問的時候,即使引用是null,也不會出現空指針異常。因為訪問靜態的數據不需要對象的存在System.out.println(zhangsan.country);}}?
總結
以上是生活随笔為你收集整理的JAVA入门级教学之(static关键字)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: excel公式编辑器_Excel中自动更
- 下一篇: 调python返回图片_三个好习惯,帮你