1. 程式人生 > 其它 >【超硬核】JVM原始碼解讀:Java方法main在虛擬機器上解釋執行

【超硬核】JVM原始碼解讀:Java方法main在虛擬機器上解釋執行

變數

type varName [=value]
//資料型別 變數名 = 值

注意事項

  • 每個變數都有型別,型別可以是基本型別,也可以是引用型別

  • 變數名必須是合法的識別符號

  • 變數名是一條完整的語句,因此每一個宣告都必須以分號結束

/**
* @projectName: JAVA程式設計
* @package: PACKAGE_NAME
* @className: Demo07
* @author: IT_Jay
* @description: TODO
* @date: 2021/11/17 15:53
*/
public class Demo07 {
public static void main(String[] args) {
//int a,b,c;
//int a=1,b=2,c=3; 建議分行寫,增強可讀性
int a = 1;
int b = 2;
char x = 'X';
double pi = 3.14;
}
}

常量

  • 常量(constant):初始化(initialize)後不能再改變值!

  • 常量可以理解為一種特殊的變數,它的值被設定後,在程式執行過程中不允許被改變

final 常量名 = 值;

final double PI = 3.14;

  • 常量名一般使用大寫字元

/**
* @projectName: JAVA程式設計
* @package: PACKAGE_NAME
* @className: Demo08
* @author: IT_Jay
* @description: TODO
* @date: 2021/11/17 15:57
*/
public class Demo08 {

//類變數 static
static double salary = 2500;

//屬性,變數

//例項變數:從屬於物件;如果不初始化,這個型別的預設值:數值型:0 或 0.0 ,字元型(char):u0000
//布林值:預設為false
//除了基本型別(八個),其餘的預設值都是null;
String name;
int age;

//main方法
public static void main(String[] args) {
//區域性變數,必須宣告和初始化值
int i; //未初始化
//System.out.println(i); //無法輸出

//變數型別 變數名字 = new Demo08();
Demo08 demo08 = new Demo08();
System.out.println(demo08.age); //0
System.out.println(demo08.name); //null

//類變數 static
System.out.println(salary); //2500.0
}

//其他方法
public void add(){}
}

/**
* @projectName: JAVA程式設計
* @package: PACKAGE_NAME
* @className: Demo09
* @author: IT_Jay
* @description: TODO
* @date: 2021/11/17 16:21
*/
public class Demo09 {

//修飾符,不存在先後順序 final static 。。。。
static final double PI = 3.14;

public static void main(String[] args) {
System.out.println(PI); //3.14
}
}

變數的命名規範

  • 所有變數、方法、類名:見名知意

  • 類成員變數:首字母小寫和駝峰原則:monthSalary 除了第一個單詞以外,後面的單詞首字母大寫 lastName

  • 區域性變數:首字母小寫和駝峰原則

  • 常量:大寫字母和下劃線:MAX_VALUE

  • 類名:首字母大寫和駝峰原則:Man、GoodMan

  • 方法名:首字母小寫和駝峰原則:run()、runRun()