以下是在对象创建过程中打印每个步骤的顺序的示例。

instance create step test.Java:

import javax.annotation.PostConstruct;

/**

* Test steps of instance creation.

*

* @author eric

* @date Jan 7, 2018 3:31:12 AM

*/

public class InstanceCreateStepTest {

public static void main(String[] args) {

new Sub().hello();

System.out.printf("%s\n", "------------");

new Sub().hello();

}

}

class Base {

static {

System.out.printf("%s - %s - %s\n", "base", "static", "block");

}

{

System.out.printf("%s - %s - %s\n", "base", "instance", "block");

}

public Base() {

System.out.printf("%s - %s\n", "base", "constructor");

}

@PostConstruct

public void init() {

System.out.printf("%s - %s\n", "base", "PostConstruct");

}

public void hello() {

System.out.printf("%s - %s\n", "base", "method");

}

}

class Sub extends Base {

static {

System.out.printf("%s - %s - %s\n", "sub", "static", "block");

}

{

System.out.printf("%s - %s - %s\n", "sub", "instance", "block");

}

public Sub() {

System.out.printf("%s - %s\n", "sub", "constructor");

}

@PostConstruct

public void init() {

System.out.printf("%s - %s\n", "sub", "PostConstruct");

}

@Override

public void hello() {

// super.hello();

System.out.printf("%s - %s\n", "sub", "method");

}

}

执行:

只需调用main方法,然后检查输出即可。

提示:

除非您在某个容器(例如Spring-boot)中调用它,否则不会调用用@PostConstruct标记的方法,因为它依赖于那些容器来实现像@PostConstruct这样的注释。

java在初始化过程_Java初始化和实例化顺序相关推荐

  1. java在初始化过程_Java初始化过程

    这篇文章主要讲解Java在创建对象的时候,初始化的顺序.主要从以下几个例子中讲解: 继承关系中初始化顺序 初始化块与构造器的顺序 已经加载过的类的初始化顺序 加载父类,会不会加载子类 创建子类对象会不 ...

  2. java 对象初始化过程_Java——对象初始化顺序使用详解

    一. 代码块的概念 在探究对象初始化顺序之前,我们先通过代码来了解一下代码块的概念. class Test{ public static String str1; //静态字段 public Stri ...

  3. java项目初期化_Java初始化规则都不懂,搞什么开发!

    这个教程,咱们来对Java中设计到的初始化规则,或者说初始化顺序,来做一下汇总,这里我基本上把Java中,默认初始化,静态成员初始化,非静态成员初始化,静态代码块,非静态代码块,以及继承中所涉及到的初 ...

  4. java创建对象的过程_Java创建对象的过程

    Java创建对象的过程 Java是一门面向对象的编程语言,在Java程序运行过程中每时每刻都有对象被创建出来.在语言层面上,创建对象通常仅仅是一个new关键字而已,而在虚拟机中,对象的创建又是怎样一个 ...

  5. java初始化配置_java – 初始化没有XML配置的数据库,但使用@Configuration

    你的@Configuration类下面的代码行可能工作. @Value("classpath:com/foo/sql/db-schema.sql") private Resourc ...

  6. java代码编译过程_Java代码编译和执行的整个过程

    一.简述 Java代码编译和执行的整个过程包含了三个重要的机制:①Java源码编译机制:②类加载机制:③类执行机制 二.Java源码编译机制 Java代码编译是由Javac编译器来完成,流程如图: J ...

  7. java接口和实例_java – 接口和实例化

    第二个声明是错误的: Then it goes on and says a paragraph or so later that "You can declare a variable to ...

  8. java语言执行过程_Java程序的运行过程(执行流程)分析

    万事知其然,要知其所以然,所以本节带大家来详细了解一下 Java 程序的执行过程.从<使用记事本编写运行Java程序>一节的案例可以看出,Java 程序的运行必须经过编写.编译和运行 3 ...

  9. java线程创建过程_Java创建线程的细节分析

    转载:http://shmilyaw-hotmail-com.iteye.com/blog/1880902 前言 关于线程创建的问题,可以说是老生常谈了.在刚开始学习Thread的时候基本上都会接触到 ...

最新文章

  1. 如何将你拍摄的照片转换成全景图及六面体(PTGui)
  2. CSS设置图片的重复
  3. STM32开发 -- 设置MCU运行频率
  4. Linux 命令之 type -- 显示指定命令的类型
  5. 奇怪,Python有的函数调用需要两对括号?(2)
  6. 【论文】 NLP中命名实体识别从机器学习到深度学习的代表性研究
  7. HP-UX 11i v2安装使用python 2.5.2
  8. ZOJ 3511 Cake Robbery
  9. 揭秘 IFTTT 每天处理几十亿事件数据的基础结构
  10. WINDOWS系统最近使用的项目路径
  11. httpClient发送post请求,带header、body的工具类
  12. 加域电脑如何取消锁屏
  13. 三阶魔方还原步骤图_七步玩转三阶魔方还原公式及步骤图解教程
  14. 向量的数量函数的导数
  15. egg项目部署及PM2的使用
  16. docker image 的sha256 digest摘要
  17. 2022年茶艺师(中级)特种作业证考试题库及在线模拟考试
  18. linux安装docker crt证书,docker 如何添加证书
  19. 传统加密技术续-Hill Vigenere Vernam
  20. proteus教程——出租车行驶里程计数

热门文章

  1. 盘点那些跨界玩到飞起的程序员们!
  2. 程序员是如何处理密码的?
  3. 全面解析腾讯最新开源 loT 操作系统 TencentOS tiny!
  4. 5大主流主链排行版出炉; 以太坊新生合约数持续3周下跌; 各大榜单均现“黑马”冲榜!| 数据周榜...
  5. 程序员版的「倚天屠龙」,看完泪奔!
  6. 为什么你就是学不会 Numpy ? | 技术头条
  7. 人到不惑,程序员是否该认命?
  8. PingCAP 完成 C 轮 5000 万美元融资,创新型分布式关系型数据库领域最大笔融资
  9. Google Fuchsia 对中国操作系统的启示 | 畅言
  10. 加密货币被爆重大安全漏洞,价值 50 亿美元!