静态代码块和静态方法执行顺序,构造器和静态代码块谁先执行

  静态代码块和静态方法执行顺序,构造器和静态代码块谁先执行

  如何解决写爬虫IP受阻的问题?立即使用。

  本教程运行环境:windows7系统,java8版本8,DELL G3电脑。

  构造代码块、静态代码块和构造方法是一个类中三个不同的代码块,那么它们之间有什么区别呢?

  

一、三种代码块简介

  静态代码块:用staitc声明,jvm加载类时执行,只执行一次。

  构建块:由类中的{}直接定义,每次创建对象时执行。

  执行顺序优先级:静态块、main()、构建块和构建方法。

  A级

  {

  //构造一个代码块

  {

  System.out.println(建筑代码块A );

  }

  //静态代码块

  静电

  {

  System.out.println(“静态代码块A”);

  }

  //构造方法

  公共A()

  {

  System.out.println(“构造方法A”);

  }

  }

二、三者的执行顺序

  为了搞清楚三者的执行顺序,我们实例化A类,分别测试单实例和多实例。

  

2.1 单个实例

  课程演示

  {

  公共静态void main(String[] args)

  {

  新A();

  }

  }

  

2.2 多个实例

  课程演示

  {

  公共静态void main(String[] args)

  {

  新A();

  新A();

  新A();

  }

  }

  

三、继承体系中的顺序

   B类扩展了A

  {

  //构造一个代码块

  {

  System.out.println(建筑代码块B );

  }

  //静态代码块

  静电

  {

  System.out.println(“静态代码块b”);

  }

  //构造方法

  公共B()

  {

  System.out.println(“构造方法b”);

  }

  }

  课堂演示

  {

  公共静态void main(String[] args)

  {

  new B();

  }

  }

  :

四、总结

   1.在创建对象的过程中,三者的执行顺序是:静态代码块-构造代码块-构造方法;

  2.每创建一个对象,构造代码块和构造方法都会执行一次;不管创建多少个对象,静态代码块只在创建第一个对象时执行一次;

  3.创建子类对象时,子类的静态代码块在父类的静态代码块之后执行,但优先于父类的构造代码块和构造方法;

  4.创建子类对象时,子类的构造代码块在父类的构造方法之后执行。

  相关视频教程推荐:Java视频教程以上是静态代码块的执行顺序,构造代码块,构造方法的详细介绍。请多关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: