Java4-1 静态变量和成员变量 静态代码块和构造代码块

成员变量和静态变量的区别

1.名称上的区别
静态变量又叫类变量
成员变量又叫实例变量(有对象才能调用)
2.内存存储上的区别
静态变量存储在方法区的静态区中
成员变量存储在堆内存的对象中
3
.生命周期不同
成员变量随着对象的出现而出现,对象的消失而消失。
静态变量随着类的出现而出现

构造代码块

public class CodeDemo {
    {
        System.out.println("CodeDemo run");//构造代码块 用于给所有对象初始化
    }
     void show() {System.out.println("show run" );}
    public static void main(String []args) {
        CodeDemo c=new CodeDemo();
        c.show();
        CodeDemo c1=new CodeDemo();
        c1.show();
    }
    
}

运行结果:


1.png

构造代码块给所有对象初始化 而构造方法只给对应对象初始化
如果有共性的方法也可以放置到构造代码块中

public class CodeDemo {
    {
        System.out.println("CodeDemo run");//构造代码块 用于给所有对象初始化
    show();}
     void show() {System.out.println("show run" );}
    public static void main(String []args) {
        CodeDemo c=new CodeDemo();
        CodeDemo c1=new CodeDemo();
        }}

运行结果:


2.png

你可能感兴趣的:(Java4-1 静态变量和成员变量 静态代码块和构造代码块)