静态变量和静态函数都是静态成员,静态成员有几个特点
1.随着类的加载而加载,随着类的结束而结束,生命周期较长
2.静态函数只能访问静态成员.为什么静态不能访问非静态成员呢? 个人理解:因为静态是随着类的加载而加载,如果此时静态函数中有访问非静态成员,那么会报错,因为此时非静态哦成员还没加载到内存.
3.静态成员是可以直接类名调用的,楼主可以去看看API中Math和Arrays这两个类的方法都是静态的
4.在继承体系中,父类的静态成员子类是无法继承的,不过可以直接用父类名调用
5.静态成员不在栈内存也不在堆内存,而是存在于方法区或者叫共享区
6.静态变量与实例变量的区别
存在的内存不同,
静态成员是该类所有实例属性共享数据,只有一个
而实例变量是每个对象都有一个
不知道说的是否全面,希望对楼主有帮助 |