首页 > 代码库 > JAVA笔记--static

JAVA笔记--static

1.static 修饰变量

public class MyClass {    static int i = 4;}

其中static 修饰变量,表示变量 i 属于 MyClass 类,所有的对象共享一个变量,推荐使用类名来访问静态变量(1.强调了 static 设计结构;2.为编译器优化提供了机会);

不要用private 修饰 static 变量,不然无法用类名来访问。

2.static 修饰方法

public class Incrementable {    static void increment() {        MyClass.c++;    }}

static 修饰方法和修饰变量相同,同时 static 方法只能访问本类的 static 成员变量和方法,不能访问非 static 变量和方法;

main函数被定义为 static 是为程序提供入口。

3.stack 修饰类

static 只能修饰内部类

public class MyClass {    static class SClass {        public void hello() {                    }    }}

有时候可以将 main 函数写到 内部类中(静态类),就不必为每个文件都写一个 main 方法。

4.static块

public class MyClass {    static {        a = 1;    }    static int a;}

 

static 块会在类被加载时执行且只执行一次,一般用来初始化静态变量和静态方法。

 

JAVA笔记--static