Java构造函数、构造代码块和静态代码块的区别和调用时间
来源:互联网 发布:淘宝客服介入能退款吗 编辑:程序博客网 时间:2024/05/21 06:30
静态代码块:最早执行,类被载入内存时执行,只执行一次。没有名字、参数和返回值,有关键字static。
构造代码块:执行时间比静态代码块晚,比构造函数早,和构造函数一样,只在对象初始化的时候运行。没有名字、参数和返回值。
构造函数:执行时间比构造代码块时间晚,也是在对象初始化的时候运行。没有返回值,构造函数名称和类名一致。
public class Constructor { public static void main(String[] args) { System.out.println("创建第一个对象:"); Test test1 = new Test(); System.out.println(""); System.out.println("创建第二个对象:"); Test test2 = new Test(5); }}class Test { // 静态代码块1 static { System.out.println("我是静态代码块1"); } // 构造代码块1: { System.out.println("我是构造代码块1"); } // 构造函数1 public Test() { System.out.println("我是无参构造函数"); } // 构造函数2 public Test(int t) { System.out.println("我是带参构造函数," + "参数是" + t); } // 静态代码块2 static { System.out.println("我是静态代码块2"); } // 构造代码块2: { System.out.println("我是构造代码块2"); }}
运行结果:
通过上面的程序运行结果,我们可以看出,静态代码块只会在类被载入内存时加载一次,是最先执行的,然后是构造代码块,最后才是构造函数。构造代码块和构造函数都是在对象创建的时候执行,有几个对象就会执行几次。
阅读全文
1 0
- Java构造函数、构造代码块和静态代码块的区别和调用时间
- JAVA 静态代码块和构造函数
- java静态代码块,代码块和构造函数
- 静态代码块和构造代码块的区别
- 静态代码块,构造代码块和构造函数的区别
- Java的构造方法和构造代码块,静态代码块,代码块
- 静态代码块,普通代码块,同步代码块,构造代码块和构造函数解
- Java中静态代码块、非静态代码块和构造函数的执行顺序
- java 构造函数 和 构造代码块
- Java中普通代码块,构造代码块,静态代码块区别和优先级
- 静态代码块和构造代码块
- 静态代码块和构造代码块
- Java的构造代码块和静态代码块的区别
- java 中的 构造代码块和 静态代码块的区别
- Java中的代码块系列1——静态代码块和构造代码块的调用机制
- Java初始化-静态代码块、实例化代码块和构造函数的区分
- Java中代码块,静态代码块和构造函数的加载顺序
- 构造函数和静态代码块调用顺序
- CSS相对定位和绝对定位详解
- 多线程
- HDU6156(数位dp)
- aptitude 与 apt-get
- centos安装setuptools (easy_install)
- Java构造函数、构造代码块和静态代码块的区别和调用时间
- pycharm运行scrapy项目
- 常用sql语句
- UVA1423-(拓扑排序)
- ORACLE EXPDP命令使用详细
- android
- 值得你学习的 Android 开发规范
- python *args和**kwargs介绍
- http 请求中的 referer