Java类中静态方法和静态变量,静态代码块,构造方法执行顺序

createh56个月前 (01-07)技术教程100

一,Java类执行顺序

子类:ATest

父类:AParentTest

直接调用静态方法

第一种:当直接调用(没有new对象)静态方法时候:父类静态变量(按照顺序)执行----->子类静态变量(按照顺序)----->父类静态代码块------>子类静态代码块--------->执行方法执行。

new对象创建

第二种创建对象:执行父类静态代码---->执行子类的静态代码---->执行父类构造方法----->执行子类的构造方法(注:@PostConstruct修饰的方法是在构造方法之后执行的)

注:静态变量和静态代码块都是按照代码书写顺序执行的,对于静态代码块只要是操作(调用静态方法或者新建一个类等)这个类就会执行(包括静态变量)

二,说明

对于java类的执行顺序,我们可以通过测试了解现象,通过现象意会结果,这还可以帮助我们更好的理解一些执行顺序,不至于看到一些源码,不懂里面执行的逻辑

相关文章

阿里Java三面:分布式延时任务方案解析,万字长文一篇点通你

前言在开发中,往往会遇到一些关于延时任务的需求。例如生成订单30分钟未支付,则自动取消生成订单60秒后,给用户发短信对上述的任务,我们给一个专业的名字来形容,那就是延时任务。那么这里就会产生一个问题,...

Java静态内部类、匿名内部类、成员式内部类和局部内部类

内部类可以是静态(static)的,可以使用 public、protected 和 private 访问控制符,而外部类只能使用 public,或者默认。成员式内部类在外部类内部直接定义(不在方法内部...

springboot+thymeleaf+nginx实现页面静态化

适用场景在高并发的情况下,为了缓解服务器动态解析的压力,利用nginx处理静态文件的优点,可将系统中修改次数较少的页面进行静态化处理。自定义工具类import org.thymeleaf.Templa...

Java基础 —— 泛型

Java基础 —— 泛型泛型?泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。理解?为了可以进一步理解泛型,我们先来看一个问题需求:?编写一个程序,在ArrayList中添...

9分钟带你搞懂代理模式、静态代理、JDK+CGLIB动态代理

目录:1. 代理模式2. 静态代理3. 动态代理3.1. JDK 动态代理机制3.2. CGLIB 动态代理机制3.3. JDK 动态代理和 CGLIB 动态代理对比4. 静态代理和动态代理的对比5....