课堂例子
ClassAndObjectTest.java
结果截图
Hellow.java源程序以及结果截图
输出结果没有什么特别
InitializeBlockDemo.java源程序以及结果截图
MyPackageClass.java源程序以及结果截图
ObjectEquals.java源程序以及结果截图
StrangeIntegerBehavior.java源程序以及结果截图
Test1.java源程序以及结果截图
字符串倒序输出
Test2.java源程序以及结果截图
调用函数的倒序输出
Test3.java源程序以及结果截图
同一个包里调用进行倒序输出
class Root{ static{ System.out.println("Root的静态初始化块"); } { System.out.println("Root的普通初始化块"); } public Root() { System.out.println("Root的无参数的构造器"); }}class Mid extends Root{ static{ System.out.println("Mid的静态初始化块"); } { System.out.println("Mid的普通初始化块"); } public Mid() { System.out.println("Mid的无参数的构造器"); } public Mid(String msg) { //通过this调用同一类中重载的构造器 this(); System.out.println("Mid的带参数构造器,其参数值:" + msg); }}class Leaf extends Mid{ static{ System.out.println("Leaf的静态初始化块"); } { System.out.println("Leaf的普通初始化块"); } public Leaf() { //通过super调用父类中有一个字符串参数的构造器 super("Java初始化顺序演示"); System.out.println("执行Leaf的构造器"); }}
public class TestStaticInitializeBlock
{ public static void main(String[] args) { new Leaf();}
}结果
Root的静态初始化块
Mid的静态初始化块Leaf的静态初始化块Root的普通初始化块Root的无参数的构造器Mid的普通初始化块Mid的无参数的构造器Mid的带参数构造器,其参数值:Java初始化顺序演示Leaf的普通初始化块执行Leaf的构造器