java 修饰符:
1,访问修饰符:private(修饰属性 、方法、构造方法),
default(修饰属性 、方法、构造方法、类(包内访问) ),
protected(修饰属性 、方法、构造方法),
public(修饰属性 、方法、构造方法、类)。
2,static 静态的
修饰 1,属性 static int b=20;//叫作‘类变量’,所有对象公共拥有一个b,全类共有,允许直接用类名访问,类变量是在类加载的时候分配空间的(当jvm第一次使用一个类时,需要通过ClassPath找到这个类对应的.class文件,把这个文件中包含的类的信息读入jvm并保存起来),一般来说一个类只会加载一次!
‘所有的类变量是在类加载的时候分配空间,并初始化的。’==》类变量先于实例变量存在。
类加载的时机:1、创建类的对象,2、访问类的静态成员( System.out.println(MyClass.b) ; ),3、加载子类必须先加载父类,4如果仅仅是声明引用,是不会类加载的
(MyClass.c=null;)。
2,方法 static 静态方法 允许直接用类名访问;
(除构造方法) 在静态方法中,只能访问类的静态成员;
父类的静态方法只能被子类的静态方法覆盖;
静态方法可以被子类的静态方法覆盖,而且没有多态==》
(对引用调用其静态方法, 仅相当于对引用的引用类型调用静态方法);
3,初始代码块 静态初始代码块中的代码,在类加载的时候执行一次;