JavaRush /Java Blog /Random-TW /Java 變數和常數

Java 變數和常數

在 Random-TW 群組發布
要理解Java語言,理解它的語法非常重要。其關鍵的基本構建塊之一是變數。

Java中什麼是變數

Java中的變數是一個容器,可以儲存一些資料值以供以後在程式中使用。本質上,變數是Java應用程式中不可分割的最小單元。Java 中的變數有兩種類型:用於小資料的變數(原始變數)和用於更複雜、較重的變數(引用變數)。今天我們將討論第一種情況,即變數儲存資料值本身。此類變數稱為原始變數。 Java 中的原始變數和常數 - 1

在 Java 中宣告變數

讓我們來看這個例子:
int x = 9;
讓我們看看我們看到的內容: int- 描述位於 -2147483648 到 2147483647 範圍內的整數的變數類型 x- 變數的名稱(我們需要將它們彼此區分開,對嗎?) = 某些變數的賦值符號,某些value 9- 它的直接值是 該命令的結尾。現在讓我們將所有內容放在一起:我們指定具有名稱;的類型變數具有值。這個例子有一個縮寫形式,完整的形式如下: intx9
int x;
x = 9;
在第一行中,我們看到一個變數的宣告並為其分配一個名稱,也就是說,我們告訴JVM為該變數分配空間int(4個位元組)並為其命名x。在第二個中我們給它賦值9。在此之前,它有一個預設值,即0. 關於命名變數值得多說幾句。通常它們是用低駱駝風格編寫的。也就是說,例如,如果我們有一個描述人數(人數)的變量,那麼適當的名稱是:
int countOfPeople;
在此名稱中,第一個單字以小寫字母開頭,後續每個單字以大寫字母開頭。這樣做是為了使這些名稱更易於閱讀,因為變數名稱通常由多個單字組成。

重新定義變數

讓我們回到變數宣告範例:
int x = 9;
如果我們一旦將一個值放入變數中,這並不意味著在程式執行期間​​該變數x將始終有一個值9。我們可以重寫它:
x = 4;
一切都幾乎一樣,但是我們不再添加類型(int),因為它是在聲明變數(聲明其存在)時註冊的。接下來,我們只會重複使用它,例如在這裡我們看到它被覆蓋(我們將變數設為新值,覆蓋舊值)。假設我們還有一個變數:
int y = 7;
並透過設定:x = y; 變數的舊值x將被刪除,並被值的副本覆蓋y,即 - 7。您也可以設定其他一些變數的值,增加我們需要的數字:
x = y + 5;
由於我們的變數y等於 7,因此結果x將等於 12。更有趣的是執行這些操作的能力:
x = x + 6;
我們在這裡看到什麼?此變數x的值等於過去加 6,即: 12 + 6 = 18。相同的條目可以省略來縮短x
x =+ 6;

變數的類型

Java 中的應用程式由類別和物件組成。我們來看看Java變數是什麼:
  • 物件變數;
  • 局部變數;
  • 類別變數。
Java 中的原始變數和常數 - 2作為範例類,我們將採用帶有“bark”方法的狗類:
public class Dog {
   public void bark() {
   }
}

物件變數

變數在類別中聲明,但不在方法、建構子或區塊中聲明。
public class Dog {
public  int value = 9;
   public void bark() {
   }
}
要呼叫這個變量,我們需要先建立一個物件:
Dog dog = new Dog();
dog.value;
僅在建立物件之後(即使用 建立物件之後new)才會建立變數。在物件中,內部變數對於同一物件中的所有方法、建構函式或任何內容始終可見。如上所述,物件變數具有預設值。對於數字,預設值為 0;對於邏輯(布林),預設值為 false;對於物件引用,預設值為 null。

局部變數

這些變數在方法、建構子或區塊中宣告。
public class Dog {
   public void bark() {
   int value = 9;
   }
}
局部變數僅存在於被呼叫的程式碼區塊中,在程式碼區塊結束時它們將從記憶體中刪除。它們僅在宣告的方法、建構函式或區塊中可見。也就是說,您不能在其他方法中使用變數。 存取修飾符不能用於局部變數。如果變數在方法的邊界之外不可見,那麼它們有什麼意義呢?這種類型的變數在呼叫方法(或建構函數或區塊)時創建,並在完成時銷毀。

類別變數

這種類型的變數也稱為靜態變數。它們是用修飾詞宣告的static,但在方法、建構子或區塊的範圍之外。
public class Dog {
public static  int value = 9;
   public void bark() {
   }
}
調用我們的變數:
Dog.value
其中Dog是變數所附加到的類別的名稱。預設值與物件變數相同。對於數字,預設值為 0,對於布林值,預設值為 false;對於物件引用 - null。無論從類別創建多少個對象,總是有一個靜態變量,因為它僅附加到類別。類別變數在程式啟動時創建,並在程式執行完成時銷毀。Java 中的靜態變數通常在宣告為常數時使用。讓我們更詳細地討論它們。

Java中的常數是什麼

常量是給定的、固定的值,不應改變。程式設計中的常數是什麼?這是在應用程式開始運行之前已知的一些常數值,並且在程式碼中設定一次。在 Java 中,常數是由特殊單字 - 表示的變數final
final int VALUE = 54;
這裡我們得到一個變量,在將其設置為任何值後都無法更改。重點是常數比變數簡單得多。它們始終是唯一定義的並且永遠不會改變。上面我們討論了命名變量,我們應該注意命名常數的特殊性。在常數變數中,所有單字都用大寫字母書寫,並用下劃線分隔。_ 例如,我們需要一個常數來描述某事物的最大值:
final int MAX_VALUE = 999;
因此,總結一下:為我們提供了一個變數作為儲存資料(或位置地址)的位置,這使我們能夠控制應用程式。原始類型的變數具有可以儲存在記憶體中的特定資料格式、大小和值範圍。變數依位置可分為:物件變數、局部變數、類別變數。有一種特殊類型的變數——常數,它可以是全域變數。它們的範圍是整個程序。
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION