简化顺序版本是:

  1. 父类的静态成员赋值和静态块,代码排版先后顺序执行,只运行一次
  2. 子类的静态成员赋值和静态块,代码排版先后顺序执行,只运行一次
  3. 父类代码块
  4. 父类构造方法
  5. 子类初始化块
  6. 子类构造方法

再次构造子类,将重复3/4/5/6步骤

总之:见到静态必先行-》类中代码块-》构造。

public class Hello {

static class A{

static C c =new C();

public A(){

System.out.println("A's Constructor");

}

static {

System.out.println("A's static ");

}

}

static class B extends A{

public B(){

System.out.println("B's Constructor");

}

D d = new D();

C c =new C();

static {

System.out.println("B's static ");

}

}

static class C {

public C(){

System.out.println("C's Constructor");

}

static {

System.out.println("C's static");

}

}

static class D{

public D(){

System.out.println("D's Constructor");

}

static {

System.out.println("D's static");

}

}

public static void main(String args[]){

System.out.println("start");

B b = new B();

}

}

结果:

start

C's static

C's Constructor

A's static

B's static

A's Constructor

D's static

D's Constructor

C's Constructor

B's Constructor

第二例子:

http://blog.csdn.net/wenwen091100304/article/details/49488137

java运行顺序-JVM之九的更多相关文章

  1. Java类的基本运行顺序是怎样

    我们以下面的类来说明一个基本的 Java 类的运行顺序: public class Demo{ private String name; private int age; public Demo(){ ...

  2. Java类的基本运行顺序

    不看不知道,一看还真吓了一跳!Java类的基本运行顺序你真的知道吗?如果你有疑惑,那就看下面这篇文章吧.   原文出自:[url]http://column.ibeifeng.com/chenchen ...

  3. 【Java】关于JVM运行时内存空间、JVM垃圾回收机制

    参考的优秀文章 <深入理解Java虚拟机 JVM高级特性与最佳实线>(机械工业出版社) Java虚拟机的堆.栈.堆栈如何去理解? 聊聊JVM的年轻代 前言 本文是<深入理解Java虚 ...

  4. Jvm基础(1)-Java运行时数据区

    最近在看<深入理解Java虚拟机>,里面讲到了Java运行时数据区,这是Jvm基本知识,把读书笔记记录在此.这些知识属于常识,都能查到的,如果我有理解不对的地方,还请指出. 首先把图贴上来 ...

  5. Java内存管理:Java内存区域 JVM运行时数据区

    转自:https://blog.csdn.net/tjiyu/article/details/53915869 下面我们详细了解Java内存区域:先说明JVM规范定义的JVM运行时分配的数据区有哪些, ...

  6. Java知多少(23)类的基本运行顺序

    我们以下面的类来说明一个基本的 Java 类的运行顺序: public class Demo{ private String name; private int age; public Demo(){ ...

  7. jvm系列(九):Java GC 分析

    Java GC就是JVM记录仪,书画了JVM各个分区的表演. 什么是 Java GC Java GC(Garbage Collection,垃圾收集,垃圾回收)机制,是Java与C++/C的主要区别之 ...

  8. [Java学习] Java类的基本运行顺序

    我们以下面的类来说明一个基本的 Java 类的运行顺序: 1. public class Demo{ 2. private String name; 3. private int age; 4. 5. ...

  9. JVM发展史和Java运行时内存区域

    目前三大主流JVM: Sun HotSpot:Sun于1997年收购Longview Technologies公司所得.Sun于2009年被Oracle收购. BEA JRockit:BEA于2002 ...

随机推荐

  1. linux 远程装机

    首先,服务器配置dhcp  关闭火墙yum install dhcp -ycd   /etc/dhcpcp   /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example ...

  2. python+splinter实现12306网站刷票并自动购票流程

    python+splinter实现12306网站刷票并自动购票流程 通过python+splinter,实现在12306网站刷票并自动购票流程(无法自动识别验证码). 此类程序只是提高了12306网站 ...

  3. SpringMVC DeferedResult和servlet3.1 AsyncContext异步请求

    先看一个简单的示例: @RequestMapping("/getFuture") public Future<String> getFuture() { System. ...

  4. 问题:modbus_tk开发中遇到[Errno 98] Address already in use (已解决)

    案例: from modbus_tk import modbus_tcp,defines import time s = modbus_tcp.TcpServer(port=5300) def mai ...

  5. Redis未授权访问攻击过程与防范

    一.Redis未授权访问攻击过程 攻击主机:kali 目标主机:centos6.8(10.104.11.178) Redis版本:2.8 攻击条件:默认配置,未进行认证 攻击步骤详解: 1.Kali攻 ...

  6. SQL SERVER数据库 三种 恢复模式

    SQL SERVER 2005 以后三种恢复模式: 简单(Sample),完全(Full),大批量(Bulk_Logged) 完全备份模型 完全备份模式是指在出现数据文件毁坏时丢失数据的风险最小.如果 ...

  7. 多线程读写shared_ptrshared_ptr要加锁分析!学习笔记

     (shared_ptr)的引用计数本身是安全且无锁的,但对象的读写则不是,“因为 shared_ptr 有两个数据成员,读写操作不能原子化".使得多线程读写同一个 shared_ptr 对 ...

  8. HTML5 video 连续播放视频

    HTML Video标签属性 html页面代码 <video height="2160" id="playVideo" width="3840& ...

  9. Redis Intro - Skiplist

    http://zhangtielei.com/posts/blog-redis-skiplist.html https://juejin.im/entry/59197a390ce4630069fbcf ...

  10. (转)python学习链接

    原文:http://www.cnblogs.com/spykids/category/782491.html http://www.cnblogs.com/alex3714/category/7707 ...