静态代码块
一颗不光滑的石子
接受平凡,不接受平淡
展开
-
隐式三步,类成员赋值与代码块加载过程,继承时对于非静态成员方法,编译看父类,运行看子类
拥有隐式三步的原因:java中一切一切皆对象,一个类中如果没有书写构造方法,系统会默认赠送一个无参构造方法,里面默认有三步:1,super();调用父类无参构造2,给非静态成员变量赋值3,执行构造代码块 这就是成员变量可以不赋值就使用的原因,在一些比较压轴的面试题里面很容易出现类似的题目,理解隐式三步有利于理清代码执行过程。...原创 2020-06-16 20:30:03 · 806 阅读 · 0 评论 -
隐式三步,静态构造代码块,构造方法,main方法之间的运行顺序问题
package com.itheima; class M{ private int a; { System.out.println("我是父类的构造代码块");//5 } static { System.out.println("我是父类的 静态代码块");//3 } public M(){ System.out.println("a还没有赋值"+a);//6 System.out.prin.原创 2020-06-16 22:05:01 · 650 阅读 · 0 评论