Java中的类
类中存在属性、普通方法、构造方法、普通代码块、静态代码块。
在编译期间JVM会怎么处理代码,那些代码会先执行。做了一个测试进行比较。
先说一下普通代码块。就是在java类中用{},进行包裹的函数代码。例如:
静态代码块:就是用static关键字进行修饰的代码块。
构造函数:这个应该不用过多的去说,构造函数,每次实例化一个类都会调用的方法,写法是public 类名(){} ,如果不写的化,系统默认是使用无参数的构造函数。
测试顺序
为了测试我写了一个很简单的类。如下
在main函数中进行实例化类,查看结果如下
得到的结果是:
- 首先执行的是静态代码块,如果有多个静态代码块就从上往下执行。(其实静态代码块在JVM加载的时候就执行了,也就是说没有实例化的时候就已经执行了静态代码块。)
- 再次执行的是普通代码块,如果有多个普通代码块就从上往下执行。
- 最后执行的是构造函数。