java三大块_java里的三大代码块

代码块

----------

1.局部代码块:public class CodeDemo {

public static void main(String[] args) {

Do();

// 局部代码块

{

int x = 10;

System.out.println("First = " + x);

}

System.out.println(20);

}

public static void Do() {

// 局部代码块

{

int x = 30;

System.out.println("Second =" + x);

}

}

}

打印结果:Second =30

First = 10

20

结论: 局部代码块,位于类的方法的内部,是按照在函数里的位置执行的。和普通的代码唯一区别是用完变量即可释放。

2.构造代码块和静态代码块public class CodeDemo2 {

public static void main(String[] args) {

// 第一次

DoitTest dit = new DoitTest();

System.out.println("---------------");

// 第二次

DoitTest dit1 = new DoitTest();

System.out.println("---------------");

// 第三次

DoitTest dit2 = new DoitTest(21);

}

}

class DoitTest {

int x = 10;

// 静态代码块:类的代码块:随类的加载而加载(只一次)

static {

System.out.println("Doit 静态代码块");

}

// 构造代码块:对象代码块:随对象的创建而出生(多次)

{

x = 20;

System.out.println(x + " Doit 构造代码块");

}

public DoitTest() {

System.out.println(x + " 无参构造函数");

}

public DoitTest(int x) {

this.x = x;

System.out.println(x + " 有参构造函数");

}

}输出结果:

Doit 静态代码块

20 Doit 构造代码块

20 无参构造函数

---------------

20 Doit 构造代码块

20 无参构造函数

---------------

20 Doit 构造代码块

21 有参构造函数

结论:构造代码块和静态代码块都位于方法外。构造代码块是对象代码块(多次),静态代码块是类代码块(一次加载)。

其执行顺序(在类的放置顺序无所谓)分别是 静态代码块(随类加载)--》构造代码块--》构造函数。

注:构造函数必须在最后执行,不然构造函数的赋值就没有赋值的作用了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值