Java中类静态变量static的应用

static

静态变量

用static定义的变量共享空间

举例

class Student{
    static String schoolName;
}

class StudentTest{
    public static void main(String [] args){
        Student stu1=new Student();
        Student stu2=new Student();
        stu1.schoolName="湖南科技职业学院";//此处给stu1重新赋值
        System.out.println(stu1.schoolName);
	//stu2内也被影响了
        System.out.println(stu2.schoolName);
    }
}

输出:

湖南科技职业学院
湖南科技职业学院

static定义的对象只在栈内存开辟一次空间

stu1和stu2共享一个schoolName空间

只有成员变量才能用static定义

class A{
    static int a;//正确
    public void B(){
        static int c;//错误
    }
}

一般只用静态变量用

类名.变量名

以示区别,容易区别出静态变量(类变量)

静态方法的调用

引用对象.静态方法;
类名.静态方法;//建议使用

在同一类中可以直接使用 <方法名> 调用

静态代码块

class Test{
	static{
        System.out.println("静态代码块已经执行");
    }
    public Test(){
        System.out.println("构造方法已经执行");
    }
}

输出:

静态代码块已经执行//最先执行
构造方法已经执行

静态代码块在启动之前就执行了,且只执行一次

原创文章 11 获赞 7 访问量 463

猜你喜欢

转载自blog.csdn.net/qq_44408913/article/details/103711854