zoukankan      html  css  js  c++  java
  • java_自由块(静态块和非静态块)

    java中的自由块分为两种:

    静态块和非静态块

    静态块:

    1 public class Test {
    2     static int x = 10;
    3     //静态块:静态块的执行时机是在class文件装载的时候;静态块只会执行一次
    4     //多个静态块的时候,按出现顺序执行
    5     static{
    6         x+=5;
    7     }
    8 }

    非静态块:

    1 public class Test {
    2     //非静态块:每次初始化一个对象,都会导致一次非静态块的执行;在构造函数执行之前执行
    3     //继承关系:父类的非静态块->父类的构造函数->自己的自由块->自己的构造函数
    4     {
    5         System.out.println("before");
    6     }
    7 }

    测试demo:

     1 public class Test {
     2 
     3     static int x = 10;
     4     //静态块:静态块的执行时机是在class文件装载的时候;静态块只会执行一次
     5     //多个静态块的时候,按出现顺序执行
     6     static{
     7         x+=5;
     8     }
     9     public static void main(String[] args) {
    10         new Test();
    11         System.out.println(x);
    12     }
    13     //静态块
    14     static {
    15         x/=3;
    16     }
    17     public Test(){
    18         System.out.println("构造函数");
    19     }
    20     //非静态块:每次初始化一个对象,都会导致一次非静态块的执行;在构造函数执行之前执行
    21     //继承关系:父类的非静态块->父类的构造函数->自己的自由块->自己的构造函数
    22     {
    23         System.out.println("before");
    24     }
    25 }

    控制台输出:

    before
    构造函数
    5

    更多信息:java自由块

  • 相关阅读:
    nginx超时重发
    excel另存为csv
    数据清洗——python定位csv中的特定字符位置
    pandas.read_csv参数整理
    Python 如何在csv中定位非数字和字母的符号
    ORACLE SEQUENCE用法(转)
    Python安装distribute包
    ex41习题 41: 来自 Percal 25 号行星的哥顿人(Gothons)
    利用python去除红章
    UNDO表空间
  • 原文地址:https://www.cnblogs.com/hongten/p/hongten_java_free_static.html
Copyright © 2011-2022 走看看