A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

分析程序的执行结果:
  1. class Student {
  2.     static {
  3.         System.out.println("Student 静态代码块");
  4.     }

  5.     {
  6.         System.out.println("Student 构造代码块");
  7.     }

  8.     public Student() {
  9.         System.out.println("Student 构造方法");
  10.     }
  11. }

  12. class Demo2_Student {
  13.     static {
  14.         System.out.println("Demo2_Student静态代码块");
  15.     }

  16.     public static void main(String[] args) {
  17.         System.out.println("我是main方法");

  18.         Student s1 = new Student();
  19.         Student s2 = new Student();
  20.     }
  21. }
复制代码


输出顺序:
Demo2_Student静态代码块
我是main方法
Student 静态代码块
Student 构造代码块
Student 构造方法
Student 构造代码块
Student 构造方法

分析:静态代码块随类的加载而加载,并且只调用一次;
         构造代码块随对象的创建而加载,并且优先于构造方法,每创建一个对象加载一次

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马