静态代码块、非静态代码块、构造函数执行顺序

/*** 类的实例化顺序,静态代码块、非静态代码块、构造函数、* @author MING*/
class Person {static String name = "父类静态属性";String addr = "父类非静态属性";static int m=1; static {m=2;System.out.println(name);System.out.println("父类静态块");}{System.out.println("父类非静态块");}public Person() {System.out.println("父类构造方法");}
}public class Student extends Person {static String name1 = "子类静态属性";String addr1 = "子类非静态属性";static {System.out.println(name1);System.out.println("子类静态块");}{System.out.println("子类非静态块");}public Student() {System.out.println("子类构造方法");}public static void main(String[] args) {System.out.println("-------main begin---");Student st = new Student();System.out.println("m = " +st.m); //static int m=1在静态代码块上打印m=2,在下打印m=1 System.out.println("-------main end---");}}

执行结果:

静态代码块、非静态代码块、构造函数执行顺序相关推荐

  1. java静态代码块和非静态代码块和构造函数执行顺序

    一.同类中静态代码块,非静态代码块,构造方法的执行顺序 1. 执行顺序:静态代码块-->非静态代码块-->构造方法. 程序在执行时,首先执行静态代码块,且只执行一次.接下来再创建对象时(n ...

  2. java 非静态 初始化_Java非静态代码块和实例初始化过程

    1 非静态代码块 非静态代码块特点 ①可以为实例变量(非静态的属性)初始化 ②每次创建对象的时候,都会执行一次,且先于构造器执行 ③若有多个非静态的代码块,那么按照定义的顺序从上到下依次执行 ④代码块 ...

  3. [转载] java synchronized静态同步方法与非静态同步方法,同步语句块

    参考链接: Java中的静态方法与实例方法 java synchronized静态同步方法与非静态同步方法,同步语句块 并发编程 线程同步 静态方法锁 非静态方法锁 同步块 进行多线程编程,同步控制是 ...

  4. java synchronized静态同步方法与非静态同步方法,同步语句块

    大纲:java线程知识体系 对代码进行同步控制我们可以选择同步方法,也可以选择同步块,这两种方式各有优缺点.同步块不仅可以更加精确的控制对象锁,还可以控制锁的作用域,何谓锁的作用域?锁的作用域就是从锁 ...

  5. Java中static代码块,main函数,构造函数运行顺序

    1.Java中static代码块,main函数,构造函数运行顺序如下: 答:static代码块是主动执行的,因此static代码块先执行,然后是执行构造函数,最后是Main函数. 如下例子: publ ...

  6. java 继承类 变量、静态变量、构造函数执行顺序

    java 继承类 变量.静态变量.构造函数执行顺序 Java代码   class C{ static int prt(int i){ System.out.println(i); return i; ...

  7. C#构造函数、私有构造函数、静态构造函数与构造函数执行顺序

    https://www.cnblogs.com/ArtofDesign/p/3603986.html 默认构造函数,如果没有为类指定任何构造函数,编译器会自动为类创建一个无参构造函数,用以初始化类的字 ...

  8. Java构造器、静态对象、非静态对象等的初始化顺序

    Java创建类对象时对于构造器,静态对象.非静态对象的初始化有一定的顺序,我简单归纳一下: class classes {public classes(String n) {System.out.pr ...

  9. fegin需要实现类_【第24条】静态成员类优于非静态成员类

    第24条 静态成员类优于非静态成员类 嵌套类(nested class)是指定义在另一个类的内部的类.嵌套类存在的目的应该只是为它的外围类(enclosing class)提供服务.如果嵌套类将来可能 ...

最新文章

  1. POJ 3784.Running Median
  2. 二者取其一(初遇)_网络流
  3. yum groupinstall “Development Tools“查看其软件列表
  4. java 反射私有变量赋值_通过反射,操作私有成员变量(取/赋值),调用私有方法...
  5. HLS Pragma(3)config_storage
  6. C#开发纽曼来电小秘书总结(指南)
  7. html img设置最底层,在HTML片段中设置img标签的baseUrl
  8. 快速制作BP神经网络结构示意图
  9. 《算法导论》——矩阵乘法的Strassen算法
  10. html ul标签宽度,css - ul中每个li的不同宽度 - SO中文参考 - www.soinside.com
  11. 关于background与background-image用法
  12. 投身管理工作(项目经理修炼手册正文的开头)
  13. 微信机器人框架【Python】
  14. 微信支付(PC扫码支付和H5公众号支付)
  15. 计算机辅助机械设计a卷,二维CAD工程师(机械设计)考试A卷
  16. Ubuntu 下启用trackPoint
  17. QQ空间快速登录地址
  18. 计算机系统文件夹打不开,为什么打不开文件夹
  19. 拍好的视频如何添加配乐
  20. Django项目后端实现注册功能---短信验证码(容联云)。

热门文章

  1. excel导入sqlserver数据库大数据量,可每秒控制数量
  2. [CF353C]Find Maximum(贪心)
  3. SSIS hang with unhandle exception
  4. asp.net网站的配置文件
  5. 7-69 计算圆周率 (15 分)
  6. 3007基于二叉链表的二叉树叶子结点到根结点的路径的求解(附DFS在树里的应用分析,思路详解)
  7. VMware15设置快照回到指定时间的状态
  8. 【输入一个数,判断是否为素数(质数)】
  9. MyBatis复习(六):MyBatis二级缓存
  10. 编程实现newton插值c++_数据体操:数据处理和IDW地理插值算法