例如该题:

 1 class Fu{
static {
System.out.println("这是父类静态代码块");
}
{
System.out.println("这是父类构造代码块");
}
public Fu(){
System.out.println("这是父类构造方法");
}
}
class Zi extends Fu{
static {
System.out.println("这是子类静态代码块");
}
{
System.out.println("这是子类构造代码块");
}
public Zi(){
System.out.println("这是子类构造方法");
}
}
class ExtendsTest2{
public static void main(String []args){
Zi z=new Zi();
}
} 静态代码块:随着类的加载而加载。
构造代码块:每次调用构造方法都会先于构造方法执行。 加载子类时,会先加载其父类Fu,也即:
  在执行Zi z=new Zi(); 时,要加载子类Zi必须要先加载父类Fu,加载父类时,父类的静态代码块会随着父类的加载而加载------->
                                                    System.out.println("这是父类静态代码块");
  然后再加载子类,子类的构造代码块随之加载------------------------------------------> System.out.println("这是子类静态代码块");
接下来创建子类对象:
  调用子类构造方法时,先调用父类构造方法,调用父类构造方法会默认先调用构造代码块----------> System.out.println("这是父类构造代码块");
                                                    System.out.println("这是父类构造方法"); 父类构造方法调用完后调用子类构造方法----------------------------------------------> System.out.println("这是子类构造代码块");
                                                   System.out.println("这是子类构造方法");
      
  
  

java中-静态代码块、构造代码块、构造方法的联系的更多相关文章

  1. Java中静态代码块、构造代码块、构造函数、普通代码块

    在Java中,静态代码块.构造代码块.构造函数.普通代码块的执行顺序是一个笔试的考点,通过这篇文章希望大家能彻底了解它们之间的执行顺序. 1.静态代码块 ①.格式 在java类中(方法中不能存在静态代 ...

  2. Java类中代码的执行顺序 静态代码块>构造代码块>构造方法

    一:静态代码块 注意是代码块,不是静态函数.函数要调用才执行,代码块加载就执行,一般是静态变量的声明与初始化.被static修饰的代码块(赋值.输出操作等).类中静态语句块仅在类加载时被执行一次 如 ...

  3. java学习(一)静态代码块 构造代码块 构造方法的执行顺序及注意问题

    今天我总结了一下java中静态代码块 构造代码块 构造方法的执行顺序及其注意问题 首先要知道静态代码块是随着类的加载而加载,而构造代码块和构造方法都是随着对象的创建而加载 当时做了这么一个小案例(想必 ...

  4. Java面试题 静态代码块 构造代码块 构造方法 的执行顺序

    JAVA中的静态代码块 构造代码块 构造方法执行顺序: 静态代码块(类加载时执行)>>构造代码块>>构造方法 下面展示一个简单的例子,推荐大家动手运行一遍: public cl ...

  5. java静态代码块、静态方法、静态变量、构造代码块、普通代码块

    一.静态代码块 1.在java类中(方法中不能存在静态代码块)使用static关键字和{}声明的代码块: public class CodeBlock{ static{ System.out.prin ...

  6. Java中静态代码块,代码块,构造方法优先级、区别及代码示例

    在项目中遇到了代码块的知识点,跑了下测试,写下结论 代码优先级:静态代码块 -> 构造代码块 -> 构造方法 多个代码块优先级,按照“先定义的代码先执行,后定义的代码后执行”原则执行 静态 ...

  7. Java 中静态代码块初始化问题测试

    Java 中静态代码块初始化问题测试 原创 情况一:变量是 static final 修饰的"编译期常量",如 public static final String a = &qu ...

  8. java基础8 构造函数和构造代码块

    一.构造函数 1 构造函数的作用 给对应的对象进行初始化. 2 构造函数的格式 修饰符 函数名(形式参数){ //函数名就是类名 函数体 } 举例说明: class Perosn{ private i ...

  9. java中静态代码执行顺序

    1.Java中静态变量只能在类主体中定义,不能在方法中定义. 静态变量属于类所有而不属于方法. 2. 静态块:用static申明,JVM加载类时执行,仅执行一次 构造块:类中直接用{}定义,每一次创建 ...

  10. 浅谈Java中静态初始化块跟非初始化块

    众所周知在JAVA编程语言中有两种初始化块:   静态初始化块 非静态初始化块 他们到底有什么区别呢?今天就浅谈一下JAVA中静态初始化块和非静态初始化块的区别   静态初始化块 定义:       ...

随机推荐

  1. php中文字符串反转

    <?php header("content-type:text/html;charset=utf-8"); /** 此函数的作用是反转中文字符串 mb_strlen() 获取 ...

  2. php 拓展 Filter 过滤器

    简介       Filter,它的作用就和他的名字一样——过滤.过滤规则成为过滤器,Filter内置了多个常用过滤器,根据过滤器功能的不 同,可以分成净化过滤器(Sanitization)和验证过滤 ...

  3. RunLoop-b

    RunLoop 是 iOS 和 OSX 开发中非常基础的一个概念,这篇文章将从 CFRunLoop 的源码入手,介绍 RunLoop 的概念以及底层实现原理.之后会介绍一下在 iOS 中,苹果是如何利 ...

  4. HBase eclipse开发环境搭建

    伪分布式环境安装 事先本机必须部署好了伪分布式hadoop开发环境将Hbase/lib下的 hadoop-core-*.jar 与 hadoop保持一致. 将hadoop下的复制到hbase下将had ...

  5. About JavaScript

    JavaScript Function, Constructor function, Plain Object (expression function, closure) Maintainable ...

  6. 智能硬件开发如何选择低功耗MCU

    本文将市场上典型的低功耗MCU系列进行了比较,分析得出基于ARM. Cortex M0+内核的MCU系列最适合穿戴式医疗设备的开发.设备开发者当密切关注其发展动向,结合现有的市场需求.产品体系的构建和 ...

  7. 根据body的内容 查找h2标签的@class="subtitle"的值

    <pre name="code" class="html"><body class="api jquery listing" ...

  8. 【POJ】3283 Card Hands

    字典树. #include <iostream> #include <cstdio> #include <cstring> #include <string& ...

  9. jquery禁用右键、文本选择功能、刷新

    //禁用右键.文本选择功能.刷新 $(document).bind(“contextmenu”,function(){return false;}); $(document).bind(“select ...

  10. Unique Binary Search Trees——LeetCode

    Given n, how many structurally unique BST's (binary search trees) that store values 1...n? For examp ...