中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

static關鍵字怎么在Java應用程序中使用

發布時間:2021-06-11 15:23:33 來源:億速云 閱讀:104 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關static關鍵字怎么在Java應用程序中使用,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

1、使用Java static關鍵字修飾成員變量

以下是Stundent類。

package app_one;
public class Student {
 private int id = 0 ;
 private int age = 0; 
 private String name = null;
 static int id_count = 0 ;
 public Student(int age , String name)
 {
 this.age = age ; 
 this.name = name ;
 this.id = ++id_count ;
 }
 public int getage() {
 return age;
 }
 public void setage(int age) {
 this.age = age;
 }
 public String getName() {
 return name;
 }
 public void setName(String name) {
 this.name = name;
 }
}

以下是主類:

package app_one;
public class hello {
 public static void main(String[] args) 
 {
 Student st1 = new Student(14,"小明");
 System.out.println("年齡:" + st1.getage() + " 姓名:" + st1.getName() + " 序號:" + Student.id_count);
 Student st2 = new Student(15,"小紅");
 System.out.println("年齡:" + st2.getage() + " 姓名:" + st2.getName() + " 序號:" + Student.id_count);
 Student st3 = new Student(18,"小李");
 System.out.println("年齡:" + st3.getage() + " 姓名:" + st3.getName() + " 序號:" + Student.id_count);
 }
}

運行結果:

static關鍵字怎么在Java應用程序中使用

從上面的案例可以看到,id_count是可以自動進行計數的,每一次實例化Student類的時候,id_count就自動+1,然后賦值給成員變量id,由于定義了static關鍵字的變量不再屬于對象,而是屬于類,所以在訪問的時候,我們可以用類名稱().靜態變量的形式來進行訪問。

2、使用static修飾成員方法

將上述程序中Student類的id_count修改為私有的靜態變量,并添加一個靜態的Get_idcount方法。

private static int id_count = 0 ;
public static int Get_idcount()
{
 return id_count ;
}

在主類中獲取id_count不通過類.變量的方式獲取,而是改為類.方法()的方式獲取。

Student.Get_idcount()

強調兩點:

  • (1)成員方法可以訪問成員變量

  • (2)成員方法可以訪問靜態變量

  • (3)靜態方法可以訪問靜態變量

  • (4)靜態方法不可以訪問成員變量(非靜態)

原因:因為在內存中是先有的靜態內容,后有的非靜態內容

  • (1)靜態方法當中不能使用this

原因:因為this代表當前對象,通過誰調用的方法,誰就是當前對象

小結:

一旦使用了static修飾成員方法,那么這就成為了靜態方法,不屬于對象,而是屬于類本身的。

對于靜態方法來說,可以通過對象名進行調用,也可以直接通過類名稱來調用。

如果沒有static關鍵字,那么必須首先創建對象,然后通過對象才能使用它

如果有了static關鍵字,那么不需要創建對象,直接就能通過類名稱進行調用。

無論是成員變量,還是成員方法,如果有了static,都推薦使用類名稱進行調用。

靜態變量:類名稱.靜態變量

靜態方法:類名稱.靜態方法();

對于本類中的靜態方法,可以省略類名稱。

3、靜態static的內存圖

參照學習傳智的Java課程給出的圖,清晰易懂。

static關鍵字怎么在Java應用程序中使用

4、靜態代碼塊

靜態代碼塊格式:

public class 類名稱{
  static
  {
    //靜態代碼塊的內容
  }
}
  • (1)特點:當第一次用到本類時,靜態代碼塊執行唯一的一次,靜態內容總是優先于非靜態,所以靜態代碼塊比構造方法先執行

  • (2)典型用途:用來一次性地對靜態成員變量進行賦值。

針對上面的案例做修改,在Student類中添加一個靜態代碼塊:

package app_one;
public class Student {
 private int id = 0 ;
 private int age = 0; 
 private String name = null;
 private static int id_count = 0 ;
 static 
 {
 System.out.println("靜態代碼塊運行!");
 }
 public Student(int age , String name)
 {
 System.out.println("構造方法運行!");
 this.age = age ; 
 this.name = name ;
 this.id = ++id_count ;
 }
 public int getage() {
 return age;
 }
 public void setage(int age) {
 this.age = age;
 }
 public String getName() {
 return name;
 }
 public void setName(String name) {
 this.name = name;
 }
 public static int Get_idcount()
 {
 return id_count ;
 }
}

然后主程序修改如下:

package app_one;
public class hello {
 public static void main(String[] args) 
 {
 Student st1 = new Student(14,"小紅");
 System.out.println("姓名: "+st1.getName() + " 年齡: " + st1.getage() + " 序號: "+Student.Get_idcount());
 Student st2 = new Student(14,"小李");
 System.out.println("姓名: "+st2.getName() + " 年齡: " + st2.getage() + " 序號: "+Student.Get_idcount());
 }
}

運行結果:

static關鍵字怎么在Java應用程序中使用

看完上述內容,你們對static關鍵字怎么在Java應用程序中使用有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

沙河市| 平原县| 任丘市| 大化| 江津市| 正宁县| 安乡县| 淮南市| 治多县| 南漳县| 乌苏市| 诏安县| 开阳县| 台中县| 盐山县| 太仓市| 施甸县| 岳西县| 彭州市| 正阳县| 京山县| 左贡县| 桐梓县| 永德县| 麻城市| 龙口市| 余江县| 浦城县| 信丰县| 托里县| 屏山县| 平阴县| 阜平县| 临邑县| 阳泉市| 正安县| 永吉县| 沐川县| 松原市| 什邡市| 奎屯市|