构造代码块,静态代码块,局部代码块与new对象时,执行的次序
2017-10-20 00:33
169 查看
一. 代码块
概念:使用{} 括起来的代码,称为代码块
分类:
根据它位置和声明的不同,我们可以将代码块分为局部代码块,构造代码块,静态代码块,同步代码块(多线程涉及)
a. 局部代码块
限定了变量的生命周期,变量在局部代码块中定义的,那么出来局部代码块之后,就访问不到了。在局部代码块中定义的变量,在出了代码块之后,内存就会释放掉。
作用: 主要就是节约内存.
局部代码块中定义的变量,虽然说作用域是局部的,但是如果存在外部嵌套的代码块,且在局部代码块定义之前就定义了某个变量,
那么在我们局部的代码块中就不可以定义相同名称的变量。
但是如果在局部代码块执行之后,去定义一个和局部代码块中相同名称的变量,是可以的。因为局部代码块中的变量已经失去了作用域范围。
b.构造代码块
概念:类中方法外出现,每次调用构造方法的时候,都会优先先调用构造代码块。
特点:
没创建一个对象,都会调用一次我们的构造代码块.
作用:
如果存在很多重载的构造方法,而且每个里面需要执行 相同的逻辑,那么就可以考虑将这些代码提取到构造代码块中来执行。
让我们代码结构更简练。增强了维护性.
使用场景其实不太多见。
c.静态代码块
概念:类中方法外出现,但是用static 来进行修饰。
特点:
随着类加载的时候执行。
用处:
适用于整个软件的生命周期中,只需要执行一次的业务逻辑代码。
比如我们之后数据库的操作.
相关文章推荐
- new 对象时,其静态成员变量、非静态成员、代码块、构建器的执行顺序
- 静态代码块、构造代码块、局部代码块、构造方法的执行顺序
- 【面相对象】静态代码块、构造代码块和构造函数的执行顺序
- 执行顺序:(优先级从高到低)静态代码块>mian方法>构造代码块>构造方法。 其中静态代码块只执行一次。构造代码块在每次创建对象是都会执行。
- 关于java中子类,父类中,静态代码块: staic{},动态代码块:{},构造方法,类属性,对象属性等执行顺序做个总结:
- 【Java基础知识】代码块的执行顺序(静态、构造、局部代码块)
- Java 静态代码块与构造方法执行次序
- 静态代码块、普通代码块、构造方法的执行顺序
- 静态代码块、非静态代码块、构造方法的执行顺序
- java中静态代码块与构造方法的执行顺序判断
- 静态代码块,静态属性,静态方法,普通代码块,普通方法,普通属性,构造方法的加载顺序及执行顺序
- 静态代码块,构造代码块,构造方法执行顺序
- 关于继承中静态代码块,构造代码块,构造函数执行顺序
- Java中局部代码块、构造代码块、静态代码块的区别?
- 父类子类构造方法、静态代码块、非静态代码块的执行顺序
- Java静态代码块、构造代码块、构造方法的执行顺序
- JAVA父类子类静态代码块、静态变量、构造方法的执行顺序
- java中静态代码块 构造代码块 构造方法的执行顺序及注意问题
- JAVA中静态代码块、构造方法、Super()父类与子类之间执行顺序
- 静态代码块,构造代码块,构造方法的加载执行顺序研究