java中构造函数与构造代码块加载顺序
程序员文章站
2022-05-22 18:52:27
...
package com.zcw1.demo;
/**
* @program: 151
* @description: java中构造函数与构造代码块加载顺序
* @author: zhaocunwei
* @create: 2019-12-04 14:15
*/
public class Demo36 {
{
//构造代码块
System.out.println("执行构造代码块");
}
public Demo36(){
System.out.println("执行无参构造");
}
public Demo36(String _str){
System.out.println("执行有参构造");
}
public static void main(String[] args) {
Demo36 demo36 = new Demo36();
}
}
运行结果:
注意:
虽然先执行了构造代码块,但是这个代码块是在new对象以后,会为每个构造函数添加一个构造代码块
类似下图,构造代码块是依托于构造代码函数执行的,不是先执行构造代码块再执行构造函数。
如果遇到this关键字,也就是构造函数调用自身其他的构造函数时,则不插入构造代码块,
下一篇: 如何提升 RailS 应用的性能?