------- android培训、java培训、期待与您交流! ----------
在java程序中如果用static声明变量的话,则此变量称为静态变量。
一个类可以使用不包含在任何方法体中的静态代码块,当类被载入时,静态代码块被执行,且只执行一次,静态代码块经常用来进行类属性的初始化。
class Person
{
public Person()
{
System.out.println("1.public Person()");
}
// 此段代码会首先被执行
static
{
System.out.println("2.Person类的静态代码块被调用!");
}
}
public class TestStaticDemo5 {
// 运行本程序时,静态代码块会被自动执行
static
{
System.out.println("3.TestStaticDemo5 类的静态代码块被调用!");
}
public static void main(String[] args) {
System.out.println("4. 程序开始执行!");
// 产生两个实例化对象
new Person() ;
new Person() ; //测试第二次实例化对象时的状态
}
}
运行的结果是:
3.TestStaticDemo5 类的静态代码块被调用!
4. 程序开始执行!
2.Person 类的静态代码块被调用!
1.public Person()
1.public Person()
说明在类加载时,首先运行的是静态代码块。
在我看来,静态成员的有点是可以使程序的调用更加方便,缺点是静态成员比较占内存,不会释放。
静态代码块就我目前的知识来看的话,可以在类加载的时候,初始化变量使用。