[转载] Java中变量与常量
參考鏈接: Java中的實(shí)例變量隱藏
1、變量的定義:定義變量就是要告訴編譯器這個(gè)變量的數(shù)據(jù)類型,這樣編譯器才知道需要分配多少空間給它,以及它能存放什么樣的數(shù)據(jù)。在程序運(yùn)行過程中空間的值是變化的,這個(gè)內(nèi)存空間就成為變量。為了便于操作,給這個(gè)變量取個(gè)名字,稱為變量名。?
2、變量的命名規(guī)則:?
①變量名必須是一個(gè)有效的標(biāo)識(shí)符?
②變量名不可以使用Java中的關(guān)鍵字?
③變量名不能重復(fù)?
④應(yīng)選擇有意義的單詞作為變量名。?
說明:在Java語言中語序使用漢字或其他語言文字作為變量名,如:int 年齡 = 21;在程序運(yùn)行時(shí)不會(huì)出現(xiàn)錯(cuò)誤,但建議盡量不要使用這些語言文字作為變量名。?
3、①常量的定義:在程序運(yùn)行過程一直不會(huì)改變的量稱為常量,通常也成為"final變量"。常量在整個(gè)程序中只能被賦值一次。在為所有的對(duì)象共享值時(shí),常量是非常有用的。聲明常量的標(biāo)準(zhǔn)語法為:final 數(shù)據(jù)類型 變量名[=值]?
? ②常量名通常使用大寫字母,但這不是必須。很多Java程序員使用大寫字母表示常量,是為了清楚的表明正在使用常量。?
③當(dāng)定義的final變量為成員變量時(shí),必須在定義時(shí)就設(shè)定它的初始值,否則將會(huì)提示編譯錯(cuò)誤。?
4、變量的有效范圍:變量的有效范圍是程序代碼能夠訪問該變量的區(qū)域,若超出該區(qū)域,則在編譯時(shí)會(huì)出現(xiàn)錯(cuò)誤。在程序中,一般會(huì)根據(jù)變量的有效范圍將變量劃分為成員變量和局部變量。?
5、成員變量(全局變量):在類體中所定義的變量為成員變量,成員變量在整個(gè)類中都有效。類的成員變量又分為兩種:靜態(tài)變量和實(shí)例變量?
?
6、成員變量和局部變量的有效范圍:?
①成員變量(在類體中所定義的變量為成員變量):在整個(gè)類中都有效?
②局部變量(再類的方法內(nèi)聲明變量,包括方法的參數(shù)都屬于局部變量):只在當(dāng)前定義的方法內(nèi)有效,不能用于類的其他方法中。局部變量的生命周期取決于方法,當(dāng)方法被調(diào)用時(shí),Java虛擬機(jī)為方法中的局部變量分配內(nèi)存空間,當(dāng)該方法調(diào)用結(jié)束后,則會(huì)釋放方法中局部變量占用的內(nèi)存空間,局部變量也將被銷毀。?
③局部變量可與成員變量的名字相同,此時(shí)成員變量將被隱藏,即這個(gè)成員變量在此方法中暫時(shí)失效。?
?
運(yùn)行結(jié)果為:?
?
??
7、最后附上代碼:?
package com.abc;
?
public class Variable {
? ? String name;// 成員變量(Member variables),也稱為全局變量,對(duì)象的屬性;成員變量也分為靜態(tài)變量和實(shí)例變量
? ? static int age = 20;// 靜態(tài)變量(Static variable)
? ? int weight = 45;// 實(shí)例變量(Instance variable)
? ? final double PI = 3.14;// 聲明int類型常量,當(dāng)定義的final變量為成員變量時(shí),必須在定義時(shí)就設(shè)定它的初始值,否則將會(huì)提示編譯錯(cuò)誤。
?
? ? static final double HEIGHT = 180;// 常量/靜態(tài)變量
?
? ? public static void main(String[] args) {
? ? ? ? final String tag;// 常量(constant),當(dāng)定義的final變量為成員變量時(shí),可以賦初始值,也可以不賦值
? ? ? ? String sex = "女";// 局部變量(Local variable)
? ? ? ? tag = "A";
? ? ? ? int age = 21;
//? ? ? ? tag = "B";// 錯(cuò)誤的代碼。常量在整個(gè)程序中只能被賦值一次。
? ? ? ? System.out.println(tag + "\t" + sex);
? ? ? ? System.out.println("年齡為:" + age);
? ? }
?
}
總結(jié)
以上是生活随笔為你收集整理的[转载] Java中变量与常量的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: react不同环境不同配置angular
- 下一篇: [转载] Java获取泛型T的类型 T.