静态变量 在java也叫类变量从名字可以看出它是属于某个类的而不是类的实例。它的关键字是static存储在静态存储区,当程序执行,类的代码被加载到内存,类的静态变量就分配了内存空间,他是属于类的也就是没个实例对象都是对于以个静态变量,静态变量的内存空间知道程序退出才释放所占用的内存空间。静态变量直接通过类名访问(java 也能通过对象名访问)。
有人会分全局的静态变量、局部的静态变量;全局静态变量失去了“全局”的普遍含义,它的作用域限定在本文件里。而静态变量的声明是应该出现在类里不是类的函数里。
个人理解就是static 变量时属于类的,永驻内存直到程序退出。在此程序运行期间,调用该变量的都是属于同一个。
static 可以用来 做成单例模式。
public class Car {
private Car(){
}
static Car car=new Car();
static {
System.out.println("1");
}
public static Car getInstance(){
return car;
}
public void run(){
System.out.println("一路风顺");
}
}
public class test {
public static void main(String[] args) {
Car car1=Car.getInstance();
Car car2=Car.getInstance();
Car car = Car.car;
car.run();
System.out.println();
System.out.println(car1==car);
System.out.println(car1==car2);
System.out.println(car1==car);
}
}
运行结果 1
一路风顺
true
true
true
运行顺序为 当调用Car 中静态方法获得实例时,Car 中初始化 static 片段 static {
System.out.println("1");
}静态方法或变量时按照 顺序执行的,
分享到:
相关推荐
C语言中static变量使用方法
PHP面向对象之旅深入理解static变量与方法 PHP面向对象之旅深入理解static变量与方法
java中的static变量,方法,代码块 含例子和解释
详细的分析了全局变量,局部变量,static变量的区别 以及使用时用该注意的东西,很不错的。有兴趣的可以看看
Java中static变量的几个优缺点 简单介绍static
static表示“全局”或者“静态”的意思,用来修饰成员... 用public修饰的static成员变量和成员方法本质是全局变量和全局方法,当声明它类的对象市,不生成static变量的副本,而是类的所有实例共享同一个static变量。
static变量作用是什么,本文将做详细解释
lazy-static.rs, 在 Rust 中,用于定义惰性计算的static 变量的小宏 lazy-static.rs在 Rust 中声明延迟求值的静态的宏。使用这里宏,可以以使 static s 在运行时要求执行代码,以便初始化。 这包括需要堆分配,如...
PHP面向对象之旅深入理解static变量与方法共11页.pdf.zip
全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量。全局变量本身就是静态存储方式, 静态全局变量当然也是静态存储方式。 这两者在存储方式上并无不同。这两者的区别虽在于非静态全局变量的作用域...
block,局部变量,全部变量,static的静态变量关系
如在页面中统计某个按钮被按下的次数,先在类中OnClick事件的处理过程前定义一static变量times,则每次调用该按钮的OnClick事件时,令times增1即可,非常方便: [C#]: 代码如下: … static int times=0; … private ...
这是我自己写的android jni调用java static属性的例子
主要介绍了C#类中static变量用法,实例分析了static变量使用技巧与相关注意事项,需要的朋友可以参考下
Static静态变量的应用,用登录的方法演算,当输入密码超过三次时,自动退出程序.(VB6.0源代码编写)
TIA博途中FB和FC块里的IN,Inout,Out的区别以及Static和Temp变量的用法
static关键字可以用来修饰变量、方法。 不经过实例化,就可以直接访问类中static的属性和static的方法。 static 的属性和方法,只能访问static的属性和方法,不能类访问非静态的属性和方法。因为静态属性和方法被...
主要介绍了Java中static变量能继承,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
主要介绍了Spring不能注入Static变量的原因及Spring注入静态变量,需要的朋友可以参考下
绍Java之对象引用static变量