1、普通代碼塊
直接在一個方法中出現的{}就稱爲普通代碼塊,例子程序以下:
public class CodeDemo01{
public static void main(String[] args){
//普通代碼塊
{
int x = 10;
System.out.println("x=" + x);
}
int x = 100;
System.out.println("x=" + x);
}
}
2、構造代碼塊
直接在類中定義的沒有加static關鍵字的代碼塊{}稱爲構造代碼塊,例子程序以下:
public class CodeDemo02{
public CodeDemo02(){
System.out.println("========這是構造方法=========");
}
//這是構造代碼塊,並且在new對象時,構造代碼塊優先構造方法執行
{
System.out.println("=========這是構造塊!=========");
}
public static void main(String[] args){
new CodeDemo02();
new CodeDemo02();
}
}
3、靜態代碼塊
使用static關鍵字聲明的代碼塊稱爲靜態代碼塊,靜態塊的主要目的是用來爲靜態屬性初始化,例子程序以下:
public class CodeDemo03
{
static{
System.out.println("這是主類中的靜態代碼塊!");
}
public static void main(String[] args){
new Demo();
new Demo();
new Demo();
}
}
class Demo
{
static{
System.out.println("這是Demo類中的靜態代碼塊!");
}
{
System.out.println("這是Demo類中的構造塊!");
}
public Demo(){
System.out.println("這是構造方法!");
}
}
靜態塊優先於主方法的執行,靜態塊優先於構造方法的執行,並且只執行一次!
4、同步代碼塊
同步代碼塊主要出如今多線程中。多線程