static修饰符
static修饰符 静态的,被static修饰的东西,就是静态的,那么就是属于类的(用类名.静态资源的形式来访问) 在类创建的时候被创建。 1.静态的东西属于类--》导致了 在静态方法中不能使用this关键字 非静态的东西属于对象 2.修饰成员变量:private static int age; 修饰成员方法:public static void 修饰代码块:static{} 类加载时,先执行静态代码块,再非静态,最后构造器。 3.静态代码块和非静态的区别: 静态代码块:在类加载的时候回调一次,只调用一次,(第一次加载类时,执行静态代码块,后续实例对象操纵静态资源,是同一个,且静态代码块不再被调用) 4.static变量和实例变量的区别: 1.)static变量属于类,为所有对象所共享,实例变量是属于对象,每个类的每个实例都有一份,互不干涉。 2)jvm在类加载时已经为static变量分配内存, 而实例变量是在类加载之后创建对象的时候分配内存 3)static变量存在方法区,实例变量存在堆区 4)static变量通过类名.方法名来调用,实例变量通过类名.方法名来调用 5.class Prople{ public static int age; } class T{ public static void main(String msg[]){ Prople p1 =new