java 中关键字 static的使用及注意事项
2012-11-27 17:53
471 查看
最近复习了一下java,看了一下static静态关键字,现将复习做的笔记总结与大家分享。
*static关键字:
$static是一个修饰符,用于修饰成员(成员变量和成员函数)。
*被static修饰后的成员具有的特点:
A:随着类的加载而加载。
B:优先于对象存在(即在创建对象之前,就已经随着类的加载而存在)。
C:可被所以对象共享。
D:可以直接被类名调用(就是说没有创建对象,也可以调用)。
*被static修饰的成员变量叫静态变量,静态变量与成员变量的区别:
1,两个变量的生命周期不同。
A:成员变量随着对象的创建而存在随着对象的回收而释放。
B:静态变量随着类的加载而加载,随着类的消失而消失。
2,调用方式不同。
A:成员变量只能被对象调用。
B:静态变量可以被对象调用也可以被类名调用。
3,开发是的叫法不一样:
A:成员变量也叫做实例变量。
B:静态变量成为类变量。
4,数据存储位置不同。
A:成员变量数据存储在堆内存的对象中,所以也叫做对象的特有数据。
B:静态变量数据存储在方法区(有的翻译为共享区,有的翻译为共享数据区)的静态区,所以也叫对象的共享数据。
*关于静态修饰符static的几点特别注意点。
A:静态方法只能访问静态成员。//非静态方法既可以访问静态成员,也可以访问非静态成员。(静态成员包括:静态变量与静态方法)
B:静态方法中不能使用关键字this或者super。(也就是静态方法中不能出现非静态的成员变量)
C:主函数的 修饰 必须为 static。
D:静态方法中要,要调用非静态方法是可以可以使用对象来调用。(即调用前先创建个对象,再使用 (对象.方法)来调用)
*什么时候使用static关键字
1. 对于静态变量
当该变量在所有成员对象中都相同时,该成员变量可以static修饰为静态变量。(可以理解为,变量为一类的共性时,不必修改时,可以定位为静态变量,来节约内存)
2.对于静态方法(函数)
如果该方法调用了非静态变量或者说非静态成员是,就应该定义为非静态方法。否则定义为静态方法。
*最后一点,static静态代码块。
该代码块随着类的加载而执行,并且只执行一次。
有的class不用创建对象,那么这一类class不用构造函数来初始化,可以直接使用静态代码块来达到该class的目的(即为完成程序员想要完成的动作)。
-----------《完》。希望能对初学者起到帮助。减少理解上的困惑。
*static关键字:
$static是一个修饰符,用于修饰成员(成员变量和成员函数)。
*被static修饰后的成员具有的特点:
A:随着类的加载而加载。
B:优先于对象存在(即在创建对象之前,就已经随着类的加载而存在)。
C:可被所以对象共享。
D:可以直接被类名调用(就是说没有创建对象,也可以调用)。
*被static修饰的成员变量叫静态变量,静态变量与成员变量的区别:
1,两个变量的生命周期不同。
A:成员变量随着对象的创建而存在随着对象的回收而释放。
B:静态变量随着类的加载而加载,随着类的消失而消失。
2,调用方式不同。
A:成员变量只能被对象调用。
B:静态变量可以被对象调用也可以被类名调用。
3,开发是的叫法不一样:
A:成员变量也叫做实例变量。
B:静态变量成为类变量。
4,数据存储位置不同。
A:成员变量数据存储在堆内存的对象中,所以也叫做对象的特有数据。
B:静态变量数据存储在方法区(有的翻译为共享区,有的翻译为共享数据区)的静态区,所以也叫对象的共享数据。
*关于静态修饰符static的几点特别注意点。
A:静态方法只能访问静态成员。//非静态方法既可以访问静态成员,也可以访问非静态成员。(静态成员包括:静态变量与静态方法)
B:静态方法中不能使用关键字this或者super。(也就是静态方法中不能出现非静态的成员变量)
C:主函数的 修饰 必须为 static。
D:静态方法中要,要调用非静态方法是可以可以使用对象来调用。(即调用前先创建个对象,再使用 (对象.方法)来调用)
*什么时候使用static关键字
1. 对于静态变量
当该变量在所有成员对象中都相同时,该成员变量可以static修饰为静态变量。(可以理解为,变量为一类的共性时,不必修改时,可以定位为静态变量,来节约内存)
2.对于静态方法(函数)
如果该方法调用了非静态变量或者说非静态成员是,就应该定义为非静态方法。否则定义为静态方法。
*最后一点,static静态代码块。
该代码块随着类的加载而执行,并且只执行一次。
有的class不用创建对象,那么这一类class不用构造函数来初始化,可以直接使用静态代码块来达到该class的目的(即为完成程序员想要完成的动作)。
-----------《完》。希望能对初学者起到帮助。减少理解上的困惑。
相关文章推荐
- java static关键字 以及使用注意事项
- Java使用volatile关键字的注意事项
- static 关键字 成员变量和静态变量的区别 静态使用的注意事项 静态代码块 构造代码块
- static关键字使用注意事项
- JAVA8接口中的default、static方法使用注意事项
- static关键字:解决的问题,在内存中的特点和使用注意事项
- 由static关键字引发的知识点学习和在类中的使用相关注意事项
- Java关键字this、super的使用注意事项
- JAVA8接口中的default、static方法使用注意事项
- java volatile关键字使用方法及注意事项
- 后端(Java)开发人员使用Redis时的注意事项
- Java关键字final、static使用总结
- Java关键字final、static使用总结
- 函数中关于const关键字使用的注意事项
- Java:关键字static、final使用小结
- Java关键字final、static使用总结
- Java8接口中default、static方法使用注意事项
- Java关键字final、static使用总结
- Java变量的使用注意事项
- java之implements注意事项及各种情况下的使用