static是java的关键字,用static声明达到静态的目的。所谓静态,就是在程序编译后就能被使用,不需要创建任何实例。static能够修饰类、方法、变量以及类代码块,具体如下:
static方法
被static声明的方法叫做静态方法,不需要实例化对象通过类名直接调用的方法,最常见的是main()。
了解main方法看这里:main方法是什么
例如:
public class TestStatic {
public static void main(String[] args) {
TestStatic.testStatic();
}
public static void testStatic() {
System.out.println("my testStatic");
}
}
运行结果如下:
my testStatic
static属性
被static声明的属性叫做静态属性(类变量),不需要实例化对象通过类名直接使用。
了解实例变量、类变量看这里:局部变量、类变量、实例变量有什么区别
例如:
public class TestStatic {
public static void main(String[] args) {
TestStatic.staticString = "staticString";
System.out.println(TestStatic.staticString);
}
public static String staticString;
}
运行结果如下:
staticString
static代码块
被static修饰的代码块在类加载时就会执行,例如:
public class TestStatic {
public static void main(String[] args) {
}
static {
System.out.println("my static code");
}
}
运行结果如下:
my static code
staitc类
通常情况下,是不可以用static修饰类的。如果一定要用static修饰类的话,只能修饰内部类。如果想在内部类中使用statitc属性或方法,需要使用static内部类(普通内部类只能使用static final),例如:
public class TestStatic {
static class StaticA {
private static String str = "my str";
public static String getStr() {
return str;
}
}
public static void main(String[] args) {
System.out.println(TestStatic.StaticA.getStr());
}
}
运行结果如下:
my str
Java千百问_03基础语法(017)_static有什么用
原文:http://blog.csdn.net/ooppookid/article/details/51638212