java中static 关键字
来源:互联网 发布:js获取鼠标当前位置 编辑:程序博客网 时间:2024/06/05 11:53
static关键字的作用:
1 静态变量
在定义一个类时,只是在描述某类事物的特征和行为,并没有产生具体的数据。只有通过new关键字创建类的实例对象后,系统才能为每个对象分配空间,存储各自的数据,有时候我们希望某些特定的数据在内存中只有一份,而且被一个类的所有实例所共享,这是java中提供了static关键字来修饰成员变量,给变量被称为静态变量。静态变量被所有实例所共享,可以使用类名.变量名来访问。 如下例:
class Student{ static String schoolName;} public class Demo{ public static void mian(String[] args){ Student.schoolName="java"; Student s1=new Student(); Student s2=new Studengt(); Sysotem.out.println("s1.schoolName"); Sysotem.out.println("s2.schoolName"); }}运行结果:java java
注意:static只能用于修饰成员变量,不能用于修饰局部变量,否则编译报错。
2静态代码块
在java类中,用一对大括号括起来的代码称为代码块,用static修饰的代码块称为静态代码块。。当类被加载时静态代码块执行,由于类只加载一次,所以静态代码块只执行一 次。 例:
class Demo { static{ Sysotem.out.println("静态代码块"); } public static void mian(String[] args){ Person p1=new Person(); Person p2=new Person(); }} class Person{ static{ Sysotem.out.println("person类的静态代码块"); } }结果:静态代码块 person类的静态代码块
3静态方法
有时我们希望在不创建对象时就可以调用某个方法,要实现这样的效果,只需要在类中定义的方法前面加上static关键字即可,即为静态方法。例:
class Person{ public void eat(){ Sysotem.out.println("吃饭"); } class Demo{ public static void main(String[] args){ Person.eat(); }}结果:吃饭
4单例模式(饿汉单例设计模式)
class Single{ //自己创建一个对象 private static Single INSTANCE=new Single(); private Single(){ //类的构造方法使用private修饰,这样就不能再类的外部使用new关键字来创建实例对象了。 } public static Single getInstance(){ return INSTANCE; }} class Demo{ public static void main(String[] args){ Single s1=Single.getInstance(); Single s2=Single.getInstance(); Sysotem.out.println(s1==s2); }}结果:true。
说明只创建了一个对象
阅读全文
0 0
- Java 中 static 关键字
- java中static关键字
- Java中static关键字
- java中static关键字
- java中关键字:static
- Java中Static关键字
- java中static关键字
- Java中Static关键字
- java中static关键字
- Java中static关键字
- java中static关键字
- Java中static关键字
- java中static关键字
- Java中static关键字
- Java中static关键字
- java中static关键字
- java中static关键字
- JAVA中static关键字
- itext7学习笔记——第3章
- UVA
- Dubbo整合Spring时jar包冲突问题
- Pthreads API解析(创建销毁线程)
- 解决“Idea下项目无法找到*.xml配置文件”的问题
- java中static 关键字
- Valid Parentheses
- 设置状态栏和应用颜色统一时,重叠
- python使用qq发邮件
- 【JZOJ5336】【NOIP2017提高模拟】提米树(DP、前缀和)
- POJ3186+3190+3250
- gitbook电子书制作步骤(linux环境下)
- hdu6168
- intellij 下Hibernate 的helloWorld