参考了一下李刚的疯狂Java讲义(第二版)和毕老师的视频,结合个人的理解,做如下的简要回答,如有错误和不足还请指正和补充,谢谢!
1.概念: staic为Java中的特殊关键字,用于修饰成员(成员变量和成员函数),static修饰的成员表明它属于这个类本身,而不属于该类的对象。
2.特点:
2.1 随着类的加载而加载,优先于对象而存在,被所有对象共享,可以直接使用类名调用,虽然对象也可以调用(结果也一样),但实际编程中一般使用类名来调用;
2.2静态变量数据存储在方法区(共享数据区)的静态区
3.使用注意:
3.1静态方法只能访问静态成员;
3.2静态方法中不可以有this,super关键字;
4.使用时机:
4.1对于静态变量:当数据为对象中的共有数据,且均相同,不需做修改时,定义为静态;
4.2对于静态函数:如果该功能不需要访问非静态的成员变量,就可以定义为静态;
4.3对于静态代码块:用于给类初始化。 |