Java类的加载顺序
来源:互联网 发布:网络人气奖颁奖词 编辑:程序博客网 时间:2024/06/08 04:54
单个类加载时,会按照静态代码块,代码块,构造函数的顺序进行加载。例如:
public class Main { public static void main(String[] args) { Shape s=new Shape(); }}public class Shape { static { System.out.println("shape静态初始化块已执行!"); } { System.out.println("shape初始化块已执行!"); } public Shape() { System.out.println("Shape构造函数已执行!"); }}
执行结果如下:
shape静态初始化块已执行!
shape初始化块已执行!
Shape构造函数已执行!
当子类Circle继承父类Shape,加载子类时,会依次加载父类的静态代码块,子类的静态代码块,父类的代码块,父类的构造函数,子类的代码块,子类的构造函数。
public class Main { public static void main(String[] args) { Circle c=new Circle(3); }}public class Shape { { System.out.println("shape初始化块已执行!"); } static { System.out.println("shape静态初始化块已执行!"); } public Shape() { System.out.println("Shape构造函数已执行!"); }}public class Circle extends Shape{ static { System.out.println("Circle静态初始化块已执行!"); } { System.out.println("Circle初始化块已执行!"); } public Circle(double radius) { System.out.println("Circle构造函数已执行!"); }}
执行结果如下:
shape静态初始化块已执行!
Circle静态初始化块已执行!
shape初始化块已执行!
Shape构造函数已执行!
Circle初始化块已执行!
Circle构造函数已执行!
0 0
- Java类的加载顺序
- java类的加载顺序
- Java类加载的顺序
- Java类的加载顺序
- JAVA类的加载顺序
- java类的加载顺序
- Java类的加载顺序
- java的类加载顺序
- Java类的加载顺序
- java类的加载顺序
- Java类的加载顺序
- JAVA 类的加载顺序
- java类的加载顺序
- Java类的加载顺序
- Java类的加载顺序
- java类加载器的加载顺序
- Java| Java的类加载顺序
- Java类加载顺序
- linux基础(四)
- poj1002
- shell EOF 用户自定义终止符
- Codeforces 653D Delivery Bears 【二分+最大流】
- Silicon Lab Ember zigbee学习杂谈----Tokens
- Java类的加载顺序
- 刚刚学会个基础链表
- computer science
- [NOIp2013] 货车运输
- 【pyspark】jieba 中文分词
- 微信公众平台自定义菜单
- 统计字符串中字母个数
- mysql慢查询
- Python学习笔记-匿名函数