认识两种代码块,了解他们的特点和基本作用

复制代码
package itheima;

public class Test {
    public static void main(String[] args) {
        //认识两种代码块,了解他们的特点和基本作用
        /**代码块是类的5大成分之一(成员变量、构造器、方法、代码块、内部类)
         * 静态代码块:
         * 格式:static{}
         * 特点:类加载时自动执行,由于类只会加载一次,所以静态代码块也只会执行一次
         *作用:完成类的初始化,例如:对类变量的初始化赋值
         *
         * 实例代码块:
         * 格式:{}
         * 每次创建对象时,执行实例代码块,并在构造器前执行
         * 作用:和构造器一样,都是来完成对象的初始化的,例如:对实例变量初始化赋值
         *
         * */
        System.out.println(Student.number);
        System.out.println(Student.number);
        System.out.println(Student.number);

        System.out.println(Student.schoolName);//黑马

        System.out.println("-------------------------------------------------");

        Student s1=new Student();
        Student s2=new Student("张三");




    }
}
复制代码
复制代码
package itheima;

public class Student {
        static int number=80;
        static String schoolName;
        //静态代码块
    static {
            System.out.println("静态代码块被执行了---");
            schoolName="黑马";
        }
    //实例代码块
    {
        System.out.println("实例代码块被执行");
        System.out.println("有人创建对象了,地址为:"+this);
    }
    public Student(){
        System.out.println("无参构造器执行");
    }
    public Student(String name){
        System.out.println("有参构造器被执行");
    }
}
复制代码

 

posted @   Karlshell  阅读(31)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示