类的总结

【1】类的组成:属性,方法,构造器,代码块,内部类
【2】代码块分类:普通块,构造块,静态块,同步块(多线程)
【3】代码:

public class Test {
    //属性
    int a;
    static int sa;//在类加载时一起加载到全局方法区中的静态域里,先于对象存在
    //方法
    public void a(){
        System.out.println("-----a");
        {
            //普通块在方法体里面,限制了局部变量的作用范围
            System.out.println("这是普通块");
            System.out.println("----000000");
            int num = 10;
            System.out.println(num);
        }
        //System.out.println(num);
        //if(){} 这里的花括号也是普通块
        //while(){}
    }
    public static void b(){
        System.out.println("------b");
    }
    //构造块,一个光杆司令 调用构造方法时先调用构造块
    {
        System.out.println("------这是构造块");
    }
    //静态块 类加载时调用
    static{
        System.out.println("-----这是静态块");
        //在静态块中只能方法:静态属性,静态方法
        System.out.println(sa);
        b();
    }
    //构造器
    public Test(){
        System.out.println("这是空构造器");
    }
    
    //这是一个main方法,是程序的入口:
    public static void main(String[] args) {
        Test t = new Test();
        t.a();
        Test t2 = new Test();
        t2.a();
    }
}

【4】总结:代码块执行顺序:
最先执行静态块,只在类加载的时候执行一次,所以一般以后实战写项目:创建工厂,数据库的初始化信息都放入静态块。一般用于执行一些全局性的初始化操作。
再执行构造块,(不常用)
再执行构造器,
再执行方法中的普通块。

类的总结

上一篇:System.console().readPassword()空指针异常


下一篇:DotNet中静态成员、静态类、静态构造方法和实例构造方法的区别与联系