java在初始化过程_Java初始化和实例化顺序
以下是在对象创建过程中打印每个步骤的顺序的示例。
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初始化和实例化顺序相关推荐
- java在初始化过程_Java初始化过程
这篇文章主要讲解Java在创建对象的时候,初始化的顺序.主要从以下几个例子中讲解: 继承关系中初始化顺序 初始化块与构造器的顺序 已经加载过的类的初始化顺序 加载父类,会不会加载子类 创建子类对象会不 ...
- java 对象初始化过程_Java——对象初始化顺序使用详解
一. 代码块的概念 在探究对象初始化顺序之前,我们先通过代码来了解一下代码块的概念. class Test{ public static String str1; //静态字段 public Stri ...
- java项目初期化_Java初始化规则都不懂,搞什么开发!
这个教程,咱们来对Java中设计到的初始化规则,或者说初始化顺序,来做一下汇总,这里我基本上把Java中,默认初始化,静态成员初始化,非静态成员初始化,静态代码块,非静态代码块,以及继承中所涉及到的初 ...
- java创建对象的过程_Java创建对象的过程
Java创建对象的过程 Java是一门面向对象的编程语言,在Java程序运行过程中每时每刻都有对象被创建出来.在语言层面上,创建对象通常仅仅是一个new关键字而已,而在虚拟机中,对象的创建又是怎样一个 ...
- java初始化配置_java – 初始化没有XML配置的数据库,但使用@Configuration
你的@Configuration类下面的代码行可能工作. @Value("classpath:com/foo/sql/db-schema.sql") private Resourc ...
- java代码编译过程_Java代码编译和执行的整个过程
一.简述 Java代码编译和执行的整个过程包含了三个重要的机制:①Java源码编译机制:②类加载机制:③类执行机制 二.Java源码编译机制 Java代码编译是由Javac编译器来完成,流程如图: J ...
- java接口和实例_java – 接口和实例化
第二个声明是错误的: Then it goes on and says a paragraph or so later that "You can declare a variable to ...
- java语言执行过程_Java程序的运行过程(执行流程)分析
万事知其然,要知其所以然,所以本节带大家来详细了解一下 Java 程序的执行过程.从<使用记事本编写运行Java程序>一节的案例可以看出,Java 程序的运行必须经过编写.编译和运行 3 ...
- java线程创建过程_Java创建线程的细节分析
转载:http://shmilyaw-hotmail-com.iteye.com/blog/1880902 前言 关于线程创建的问题,可以说是老生常谈了.在刚开始学习Thread的时候基本上都会接触到 ...
最新文章
- 如何将你拍摄的照片转换成全景图及六面体(PTGui)
- CSS设置图片的重复
- STM32开发 -- 设置MCU运行频率
- Linux 命令之 type -- 显示指定命令的类型
- 奇怪,Python有的函数调用需要两对括号?(2)
- 【论文】 NLP中命名实体识别从机器学习到深度学习的代表性研究
- HP-UX 11i v2安装使用python 2.5.2
- ZOJ 3511 Cake Robbery
- 揭秘 IFTTT 每天处理几十亿事件数据的基础结构
- WINDOWS系统最近使用的项目路径
- httpClient发送post请求,带header、body的工具类
- 加域电脑如何取消锁屏
- 三阶魔方还原步骤图_七步玩转三阶魔方还原公式及步骤图解教程
- 向量的数量函数的导数
- egg项目部署及PM2的使用
- docker image 的sha256 digest摘要
- 2022年茶艺师(中级)特种作业证考试题库及在线模拟考试
- linux安装docker crt证书,docker 如何添加证书
- 传统加密技术续-Hill Vigenere Vernam
- proteus教程——出租车行驶里程计数
热门文章
- 盘点那些跨界玩到飞起的程序员们!
- 程序员是如何处理密码的?
- 全面解析腾讯最新开源 loT 操作系统 TencentOS tiny!
- 5大主流主链排行版出炉; 以太坊新生合约数持续3周下跌; 各大榜单均现“黑马”冲榜!| 数据周榜...
- 程序员版的「倚天屠龙」,看完泪奔!
- 为什么你就是学不会 Numpy ? | 技术头条
- 人到不惑,程序员是否该认命?
- PingCAP 完成 C 轮 5000 万美元融资,创新型分布式关系型数据库领域最大笔融资
- Google Fuchsia 对中国操作系统的启示 | 畅言
- 加密货币被爆重大安全漏洞,价值 50 亿美元!