代码块:静态-构造-局部

Posted liqbk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了代码块:静态-构造-局部相关的知识,希望对你有一定的参考价值。

-静态代码块

 随着类的加载而加载,并且只被加载一次,一般用于项目的初始化。

 位置是在成员位置 +  作用用来只加载一次并且加载的早 

-构造代码块

 位置是在成员位置+优先执行构造代码块再执行构造方法+用来提取构造方法的共性

构造代码块特点:在触发构造方法前先去执行构造代码块  +  用来抽取构造方法的共性  +  位置是在成员位置

-局部代码块

位置是在局部位置+作用用来控制变量的作用范围

局部代码块特点:触发了方法   +  用来控制变量的作用范围   + 位置是在方法里

三者执行顺序

静态代码块>构造代码块>局部代码块

代码演示:

package cn.tedu.staticdemo;
/**
*@author 作者:李强
*@email 邮箱:1435430561@qq.com
* 日期: 2020年5月11日
*/
//测试静态代码块和构造代码块,构造方法,局部代码块的执行顺序
public class Test7_Black {
    public static void main(String[] args) {
        Student s = new Student();
        Student s1 = new Student();
        s.say();
    }

}
class Student{
    //静态代码块
    static {
        System.out.println("这是静态代码块");
    }
    
    //构造代码块
    {
        System.out.println("这是构造代码块");
    }
    
    //构造方法
    public Student() {
        System.out.println("无参构造方法");
        {
            System.out.println("无参构造方法的局部代码块");
        }
    }
    
    //局部代码块
    public void say() {
        System.out.println("say方法");
        {
            System.out.println("这是局部代码块");
        }
    }
    
}

结果:

技术图片

 

以上是关于代码块:静态-构造-局部的主要内容,如果未能解决你的问题,请参考以下文章

代码块:静态-构造-局部

java中静态代码块(static{...}),局部代码块(方法中{...}),构造代码块(类中{...})区别。

构造代码块局部代码块和静态代码块的定义作用和区别

关于构造代码块局部代码块和静态代码块的作用和区别

代码块

静态块非静态块(方发体)以及构造方法的执行顺序