static 关键字

java中static的四种使用情况

1.static成员变量

static修饰的静态变量,属于类,在内存中只有一个复制,只要静态变量所在的类被加载时,这个静态变量就会被分配空间。

2.static成员方法

 

static修饰的方法不需要创建对象,就可以直接调用,类名打点的方式

static方法中不能使用this和super关键字不能调用非static方法,也不能访问非static成员变量

 1 /*
 2     如何保证一个类不能被手动创建对象?
 3         1.将这个类定义成抽象的
 4         2.私有化构造方法
 5             通常用在工具类中,将方法用static修饰
 6 */
 7 class A{
 8     private A(){}
 9     static void show(){
10         System.out.println("A show()");
11     }
12     
13 }
14 public class AbstractDemo3{
15     public static void main(String[] args){
16         //无法调用私有的构造方法
17         // A a = new A();
18         A.show();
19     }
20 }

 

 

 

 

3.static代码块

static代码块独立于成员变量和成员函数,只会被执行一次

4.static和final结合

表示变量,static和final,一旦被赋值不能被改变,通过类名可以访问

边上方法,static和final,该方法不能被重写,通过类名可以访问

posted @ 2018-04-08 14:41  star521  阅读(95)  评论(0编辑  收藏  举报