Ⅰ java 类加载先后顺序
父类态代码块
父类静态属性
//以上根据代码顺序
子类静态属性
子类静态代码块
//以上根据代码顺序
父类属性
父类代码块
//以上根据代码顺序
父类构造器
子类属性
子类代码块
//以上根据代码顺序
子类构造方法
子类方法
父类方法
父类静态方法
子类静态方法
package com.zz;
/**
* Created by @摩西摩西 2020/3/21 22:29
**/
public class Father {
public String name=Son.getmetod("父类属性");
public Father(){
System.out.println("父类构造器");
}
{
System.out.println("父类代码块");
}
public void fatherMethod(){
System.out.println("父类方法");
}
static {
System.out.println("父类态代码块");
}
static String name1=Son.getmetod("父类静态属性");
public static void fatherStaticMethod(){
System.out.println("父类静态方法");
}
}
package com.zz;
/**
* Created by @摩西摩西 2020/3/21 22:32
**/
public class Son extends Father {
public String name = getmetod("子类属性");
public Son() {
System.out.println("子类构造方法");
}
{
System.out.println("子类代码块");
}
public void sonMethod(){
System.out.println("子类方法");
}
public static String name1 = getmetod("子类静态属性");
static {
System.out.println("子类静态代码块");
}
public static void sonStaticMethod() {
System.out.println("子类静态方法");
}
public static String getmetod(String s) {
System.out.println(s);
return s;
}
public static void main(String[] args) {
Son son= new Son();
son.sonMethod();
son.fatherMethod();
fatherStaticMethod();
sonStaticMethod();
}
}
Ⅱ java继承时的加载顺序(见补充)
不对,此时子类没构造完成啊,亲,父类先构造完成,子类才开始真正构造,所以还是先父类再子类
Ⅲ java加载顺序中先加载publicstaticvoidmain(String[]args)吗
您好,提问者:
当这个类中有main,要执行这个类的时候,就会首先加载main方法,因为main方法是程序的入口。
如果没有main方法,那就不会执行。
Ⅳ java的类加载器有哪些,它们的顺序是什么
类加载器有四种,分别是 bootstrapClassLoader (主要加载java核心api) , ExtClassLoaders是扩展类的类加载器,AppClassLoader 程序类加载器,还有一个是用户继承ClassLoader重写的类加载器。