zl程序教程

您现在的位置是:首页 >  后端

当前栏目

java中类的继承与类加载的初始化详解编程语言

JAVA继承编程语言 详解 加载 初始化 中类
2023-06-13 09:20:42 时间

java中类的继承与类加载的初始化详解编程语言

了解包括继承在内的初始化,以对所发生的一切有个全局的把握,是很有用的。

1.当加载一个类时,如果编译器发现它有父类,那么首先加载父类,如果父类之上还有父类,那就继续加载上面的父类。

2.接下来,父类的static初始化就会被执行,然后是子类的 static初始化 ,以此类推。这种方式很重要,因为子类的static初始化可能会依赖于父类的成员能否被正确初始化。

3.至此为此,必要的类都加载完毕,对象就可以创建了。首先,父类对象中所有的成员变量执行初始化(静态的成员变量在上一步已执行了初始化),然后父类的构造器会被调用,接着子类的成员变量执行初始化,子类的构造器被调用。如果还有子类就一直按这个顺序执行下去。

class Insect{

   private int i = 9;

   protected int j;

   Insect(){

     System.out.println( i= + i + ,j= + j);

     j = 39;

   }

private static int x1 = printInit( static Insect.x1 initialized. );

     static int printInit(String s){

       System.out.println(s);

     return 47;

   }

}

public class Beetle extends Insect{

private int k = printInit( Beetle.k initialized.. );

   public Beetle(){

   System.out.println( k= + k);

   System.out.println( j= + j);

}

private static int x2 = printInit( static Beetle.x2 initialized. );

   public static void main(String[] args) {

     System.out.println( Beetle constructor! );

     Beetle b = new Beetle();

   }

}

java中类的继承与类加载的初始化详解编程语言

转载请注明来源网站:blog.ytso.com谢谢!

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/14748.html

c