zoukankan      html  css  js  c++  java
  • 代码块:静态-构造-局部

    -静态代码块

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

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

    -构造代码块

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

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

    -局部代码块

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

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

    三者执行顺序

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

    代码演示:

    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("这是局部代码块");
            }
        }
        
    }

    结果:

  • 相关阅读:
    iOS推送通知
    KVO内部实现原理
    沙盒目录结构
    UITableView的常用属性和代理方法
    优秀文章的链接
    c++面试题
    递归练习
    c#连接mysql环境配置
    mysql命令详解
    十进制转二进制
  • 原文地址:https://www.cnblogs.com/liqbk/p/12871983.html
Copyright © 2011-2022 走看看