当前位置:
首页 >
Java常见代码块的作用与区别
发布时间:2024/9/30
67
豆豆
生活随笔
收集整理的这篇文章主要介绍了
Java常见代码块的作用与区别
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
注意:代码块中声明的变量的作用域只在这个代码块中
1. 局部代码块
作用在方法当中,作用是控制变量的生命周期:
public void show(){{System.out.println("局部代码块运行!");} }在程序中当我们定义完成一个局部变量x之后,并且在接下来的代码中,不想再用到它时,那么就没必要让x在内存中继续占用空间。因此就有了局部代码块。
2. 构造代码块
作用在类的定义Body中,作用是给类的部分字段统一初始化:
public class Apple {private String size;//构造代码块 {System.out.println("构造代码块运行!");size = "E";} }构造代码块与构造函数的区别是:构造代码块是给所有对象进行统一初始化,而构造函数是给对应的对象初始化,因为构造函数是可以多个的,运行哪个构造函数就会建立什么样的对象,但无论建立哪个对象,都会先执行相同的构造代码块。也就是说,构造代码块中定义的是不同对象共性的初始化内容。所以理所当然的,构造代码块在构造函数之前执行。
3. 静态代码块
作用有两个:
(1)给类的静态变量赋值;
(2)声明静态变量;
作用在类的Body中,对类中的静态变量初始化:
public class APP {static int x, y; // 静态变量static {x = 5; // 给静态变量x赋值}public static void myMethod() {y = x++ + ++x; // x++ 先使用x的值再加1;++x先加1再使用x的值}public static void main(String[] args) {x--;myMethod();System.out.println(x + y + ++x);} }输出:23注意,如果静态代码块中的代码改为:
static {int x = 5; // 声明一个静态变量 }则只是在声明静态变量,而且这个静态变量的作用域只在这个代码块中,而不是进行初始化,最后的输出结果是3。
转载自:https://blog.csdn.net/dustin_cds/article/details/79143760
总结
以上是生活随笔为你收集整理的Java常见代码块的作用与区别的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: JavaScript中的原型protot
- 下一篇: Java 8 中 Date与LocalD