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

    java中的自由块分为两种:

    静态块和非静态块

    静态块:

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

    非静态块:

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

    测试demo:

     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
  • 相关阅读:
    按需导入NavMenu无法使用情况解决办法
    如果要使用另一台电脑作为服务器,注意关掉防火墙
    mongoose学习
    koa2的学习
    vue中swiper的使用
    447. Number of Boomerangs
    33. Search in Rotated Sorted Array
    461. Hamming Distance
    392. Is Subsequence
    412. Fizz Buzz
  • 原文地址:https://www.cnblogs.com/fengxiaolan/p/6013633.html
Copyright © 2011-2022 走看看