java static

java static


1.static的变量和方法是可以被继承的
2.static的变量和方法是属于类的,不属于那一个实例
3.static的变量会存在线程安全的问题
4.不能把任何方法体内的变量声明为静态(方法体内定义静态变量会报错)
5.访问静态常量,如果编译器可以计算出常量的值,则不会加载类。即如果A类的静态常量值是通过B类的静态常量赋值,则不加载,否则需要加载A类。
6.访问静态常量,如果编译器可以计算出常量的值(就是值不会变化的),则不会加载类,否则会加载类
7.静态方法和静态语名块不能调用非静态变量和非静态方法
8.this、super不能用到静态方法中


子类调用父类的静态方法时
(1)当子类没有覆盖父类的静态方法时,只加载父类,不加载子类
(2)当子类有覆盖父类的静态方法时,既加载父类,又加载子类


static{}语句块的执行次序
(1)当一个类中有多个static{}的时候,按照static{}的定义顺序,从前往后执行;(编写顺序执行)
(2)先执行完static{}语句块的内容,才会执行主调用语句;

猜你喜欢

转载自huangyongxing310.iteye.com/blog/2329587
今日推荐