91aaa在线国内观看,亚洲AV午夜福利精品一区二区,久久偷拍人视频,久久播这里有免费视播

<strong id="fvuar"></strong>

  • <sub id="fvuar"><dl id="fvuar"><em id="fvuar"></em></dl></sub>

    1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機構

      手機站
      千鋒教育

      千鋒學習站 | 隨時隨地免費學

      千鋒教育

      掃一掃進入千鋒手機站

      領取全套視頻
      千鋒教育

      關注千鋒學習站小程序
      隨時隨地免費學習課程

      當前位置:首頁  >  技術干貨  > java全局變量

      java全局變量

      來源:千鋒教育
      發(fā)布人:yyy
      時間: 2023-06-29 14:27:00 1688020020

        1.java全局變量

        1.1 概述

        Java中的全局變量通常是指定義在類級別上的變量,也稱為類變量或靜態(tài)變量。它們與對象實例無關,而是與類相關聯(lián)的變量。這意味著無論創(chuàng)建多少個對象,類變量的值都是相同的。類變量可以在整個類中使用,并且可以通過類名直接訪問。

        要定義一個類變量,需要在變量聲明之前添加關鍵字“static”。例如:

       public class MyClass {

        static int globalVariable = 10;

        }

         在上面的示例中,globalVariable是一個類變量,它被定義為一個整數(shù),并初始化為10。該變量可以通過類名訪問,如下所示:

       MyClass.globalVariable = 20;

         類變量可以在類中的任何地方使用,并且對于所有對象都是相同的。這使得它們成為在整個類中共享數(shù)據(jù)的有用工具。

        1.2 特點

        Java的全局變量,也稱為成員變量或類變量,是在類中定義的變量,可以被類的所有方法和對象訪問。以下是Java全局變量的特點:

        1.生命周期:全局變量在類定義的生命周期內(nèi)存在,即在對象創(chuàng)建前就已經(jīng)存在,直到程序結束或類被卸載時才被銷毀。

        2.默認值:如果沒有給全局變量賦初值,則它們將默認初始化為0或null,具體取決于變量的類型。

        3.可見性:全局變量可以在類的所有方法中訪問,包括靜態(tài)和非靜態(tài)方法。

        4.作用域:全局變量的作用域是整個類,可以在類的任何方法中使用。

        5.靜態(tài)性:可以使用static關鍵字將全局變量聲明為靜態(tài)變量,這樣它們將成為類變量,而不是對象變量。靜態(tài)變量只有一個副本,被類的所有對象所共享,因此它們可以在不創(chuàng)建對象的情況下訪問。

        6.可變性:全局變量可以是可變的或不可變的,這取決于它們的數(shù)據(jù)類型。如果全局變量是一個對象,則可以更改該對象的狀態(tài),即使變量本身是final類型。

        總之,全局變量是Java中非常重要的一種數(shù)據(jù)類型,它們可以讓變量在類的范圍內(nèi)存在,并且可以在整個類中使用。因此,它們可以被用來存儲對整個類有意義的數(shù)據(jù),或者作為類的狀態(tài)的標志。

        1.3 案例

        以下是一個使用全局變量的Java示例:

      public static void main(String[] args) {
      // 在 main 方法中訪問全局變量
      System.out.println("全局變量的值為: " + globalVariable);

      // 調(diào)用方法來修改全局變量的值
      modifyGlobalVariable();

      // 再次訪問全局變量來查看其值是否被修改
      System.out.println("修改后的全局變量的值為: " + globalVariable);
      }

      public static void modifyGlobalVariable() {
      // 在方法中修改全局變量的值
      globalVariable = 20;
      }

         在這個例子中,我們聲明了一個名為 globalVariable 的靜態(tài)全局變量,它的值為 10。我們?nèi)缓笤?main 方法中訪問這個全局變量,并將其值打印出來。

        接下來,我們調(diào)用 modifyGlobalVariable 方法來修改全局變量的值。在這個方法中,我們將 globalVariable 的值改為 20。

        最后,我們再次訪問 globalVariable 來檢查它的值是否已被修改,并將其值打印出來。

        注意,在 Java 中,靜態(tài)全局變量必須使用 static 關鍵字進行聲明,以便在其他靜態(tài)方法中訪問它。

        1.4 java全局變量的存儲區(qū)域

        ●Java中的全局變量(即靜態(tài)變量)存儲在Java虛擬機(JVM)的方法區(qū)中。方法區(qū)是一種在JVM中用于存儲類信息、常量、靜態(tài)變量等數(shù)據(jù)的內(nèi)存區(qū)域。在JVM啟動時,方法區(qū)被分配,其大小可以根據(jù)需要進行調(diào)整。

        ●由于方法區(qū)是在JVM中共享的,因此所有實例都可以訪問相同的全局變量。因此,全局變量也稱為類變量,因為它們與整個類相關聯(lián),而不是與任何特定實例相關聯(lián)。全局變量在類被加載時初始化,并且可以通過類名來訪問,而不需要創(chuàng)建類的實例。

        2.局部變量

        2.1 概述

        局部變量是在定義形參、方法或代碼塊內(nèi)部的變量,該變量只在當前方法、代碼塊中有效。

        2.2特點

        局部變量具有如下特點:

        ●局部變量聲明在方法、構造方法或者代碼塊、形參中;

        ●局部變量在方法、構造方法、或者語句塊被執(zhí)行時創(chuàng)建,當它們執(zhí)行完成后,局部變量就會被銷毀;

        ●訪問修飾符不能添加在局部變量上;

        ●局部變量只在聲明它的方法、構造方法或者代碼塊、形參中可見;

        ●局部變量是在棧上分配的;

        ●局部變量沒有默認值,所以局部變量被聲明后,必須經(jīng)過初始化,才可以使用。

        2.3 案例

        在下面的案例中,給大家定義了幾個局部變量供大家參考。

      //args也是一種局部變量,在main(){}方法的{}范圍內(nèi)有效
      public static void main(String[] args) {
      int a = 10;//局部變量,在main(){}方法的{}范圍內(nèi)有效

      System.out.println("a=" + a);
      }

      public void showAge() {
      //i也是一種局部變量,只在for(){}這對{}范圍內(nèi)
      for(int i=0;i<100;i++) {
      System.out.println("age=" + age);
      }
      }

         2.4 java局部變量的存儲區(qū)域

        ●Java 中的局部變量存儲在棧(stack)內(nèi)存中。棧是一種后進先出的數(shù)據(jù)結構,用于存儲方法調(diào)用時的局部變量、方法參數(shù)和返回值等數(shù)據(jù)。當一個方法被調(diào)用時,會為該方法在棧上分配一塊內(nèi)存空間,用于存儲該方法的局部變量和方法參數(shù)。當方法執(zhí)行完畢后,該方法的棧幀就會被銷毀,該方法的局部變量和方法參數(shù)也就隨之被釋放。因此,局部變量的生命周期與方法的生命周期相同,只在方法內(nèi)部有效。

        3.總結

        至此,最后給大家總結下局部變量和成員變量的區(qū)別,大家一定多上手練一練哈,這樣才能加深印象:

        相同點:

        1.定義變量的格式相同;

        2.先聲明后使用;

        3.變量都有對應的作用域。

        不同點:

        兩者聲明的位置及作用范圍不同,如下表所示:

        成員變量 直接定義在類中,根據(jù)修飾符的不同,可以在當前類或其他類中有效。

        局部變量 定義在方法的形參、方法內(nèi)部、代碼塊內(nèi)部的變量。只在當前方法及代碼塊內(nèi)部有效。

      聲明:本站稿件版權均屬千鋒教育所有,未經(jīng)許可不得擅自轉載。
      10年以上業(yè)內(nèi)強師集結,手把手帶你蛻變精英
      請您保持通訊暢通,專屬學習老師24小時內(nèi)將與您1V1溝通
      免費領取
      今日已有369人領取成功
      劉同學 138****2860 剛剛成功領取
      王同學 131****2015 剛剛成功領取
      張同學 133****4652 剛剛成功領取
      李同學 135****8607 剛剛成功領取
      楊同學 132****5667 剛剛成功領取
      岳同學 134****6652 剛剛成功領取
      梁同學 157****2950 剛剛成功領取
      劉同學 189****1015 剛剛成功領取
      張同學 155****4678 剛剛成功領取
      鄒同學 139****2907 剛剛成功領取
      董同學 138****2867 剛剛成功領取
      周同學 136****3602 剛剛成功領取
      相關推薦HOT