• 【JAVA基础&Python】静态/非静态代码块


    /*
    *
    *   static静态代码块:
    *                   调用静态属性的时候 对应类里面的静态代码块就会被直接执行
    *                   注意: 只会执行一次,只能调用类内静态结构的(方法/属性)
    *                   作用:  初始化类的属性
    *
    *   非static静态代码块:
    *                   只有类被实例化后,才会调用非static静态代码块里面的内容
    *                   注意:随着创建对象都会执行一次,可以调用静态结构/非静态的结构的(方法/属性)
    *                   作用:创建对象时,对对象的属性进行初始化
    *
    *   与Python对比:
    *               类似于Python中魔法方法__init__(...)都用于初始化类属性
    *
    *
    *
    * */
    
    
    public class daimakuai {
    
        public static void main(String[] args) {
            // 调用静态属性的时候 对应类里面的静态代码块就会被直接执行
            String desc_txt = Test.desc;
            //  只有类被实例化后,才会调用非static静态代码块里面的内容
            Test txt = new Test();
    
            txt.info();
        }
    
    }
    
    
    class Test{
    
        static String desc = "定义好的代码";
    
    
        // static静态代码块
        static {
            System.out.println("static静态代码块");
        }
    
        // 非static静态代码块
        {
            System.out.println("非static静态代码块");
        }
    
        // 方法
        public static void info(){
            System.out.println("测试");
        }
    }

    输出:

    static静态代码块
    非static静态代码块
    测试

  • 相关阅读:
    C# 中的委托和事件
    sql笔记-group by 统计功能
    js,css小知识点记录
    sql小技巧
    《孙子兵法》总结
    .Net深复制、浅复制
    《君主论》
    php邮箱找回密码功能
    后台管理员账号不能同时登陆,以及登陆使对方强制下线功能
    好程序员应该读的30本书
  • 原文地址:https://www.cnblogs.com/wanghong1994/p/14142958.html
Copyright © 2020-2023  润新知