
正文
java静态代码块怎么写 java静态代码块和静态变量
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java static {}的用法
static 关键字很有意思哦
public static String getProperty(String key) { 这里不用说了,静态方法
就说说static{}
称为static代码块 ,也叫静态代码块,
是在类中独立于类成员的static语句块,可以有多个,位置可以随便放,它不在任何的方法体内,JVM加载类时会执行这些静态的代码块,如果static代码块有多个,JVM将按照它们在类中出现的先后顺序依次执行它们,每个代码块只会被执行一次
利用静态代码块可以对一些static变量进行赋值
例子
public class Test5 {
private static int a;
private int b;
static{
Test5.a=3;
System.out.println(a);
Test5 t=new Test5();
t.f();
t.b=1000;
System.out.println(t.b);
}
static{
Test5.a=4;
System.out.println(a);
}
public static void main(String[] args) {
// TODO 自动生成方法存根
}
static{
Test5.a=5;
System.out.println(a);
}
public void f(){
System.out.println("hhahhahah");
}
}
运行结果:
3
hhahhahah
1000
4
5
相关问答
Q1: java中详解静态代码块,构造代码块,构造方法。求简单易懂的解释
静态代码块:只要一用到某个类,那么这个类的静态代码块就先执行,比如:
public class Dog(){
int i = 0;
static {
i = 1;
}
public Dog(){
i = 2;
}
}
当你new 一个Dog()对象时,首先i= 1 会执行,然后才执行 public Dog(){}这个方法。
pulic Dog() 是与类同名、没有返回值的方法,也就是构造方法。
构造方法的作用是用来初始化一个对象的。比如你可以在里面写 i = 2;
那么当你 Dog d = new Dog()执行这段代码的时候,是这样的:
首先 i = 0 ;
然后执行static 静态代码块,此时i= 1;
最后执行public Dog(); i = 2;
Q2: Java的静态块和初始化块分别何时执行?有什么区别?
静态初始化块:当类第一次加载时执行。
非静态初始化块:非静态初始化块会在构造函数执行时,且在构造函数主体代码执行之前被执行。
区别如下:
1、执行次数不同
静态块只执行一次,初始化块可以执行多次。
2、作用不同
静态初始化块仅能初始化类变量,即static修饰的数据成员。
非静态初始化块可以初始化类的实例变量。
扩展资料:
使用Java静态代码块注意事项:
1、它是随着类的加载而执行,只执行一次,并优先于主函数。具体说,静态代码块是由类调用的。类调用时,先执行静态代码块,然后才执行主函数的。
2、静态代码块其实就是给类初始化的,而构造代码块是给对象初始化的。
3、静态代码块中的变量是局部变量,与普通函数中的局部变量性质没有区别。
4、一个类中可以有多个静态代码块。
5、对于静态变量、静态初始化块、变量、初始化块、构造器,它们的初始化顺序依次是(静态变量、静态初始化块)(变量、初始化块)构造器。
Q3: java中静态代码块的作用跟用法
Java静态代码块的作用:Java静态代码块中的代码会在类加载JVM时运行,且只被执行一次,也就是说这些代码不需要实例化类就能够被调用。一般情况下,如果有些代码必须在项目启动的时候就执行的时候,就需要使用静态代码块。
Java静态代码块的用法:一个类可以使用不包含在任何方法体中的静态代码块,当类被载入时,静态代码块被执行,且只被执行一次,静态块常用来执行类属性的初始化。例如:
static
{
int a=0;
}
Q4: 求java大神什么是静态代码块啊,网上写的看不懂啊。平时只用过public class 创建类。p
比如java静态代码块怎么写你平常写的方法是public void ff(){}。
静态代码块就是直接 static{ }
这样写是因为加载这个类的时候会自动加载这个java静态代码块怎么写,不用调用。
给个看个图片吧。
有问题可以追问java静态代码块怎么写,望采纳。
Q5: java 静态代码块 静态方法
静态代码块java静态代码块怎么写:有些代码必须在项目启动java静态代码块怎么写的时候就执行java静态代码块怎么写,这种代码是主动执行的(当类被载入时,静态代码块被执行,且只被执行一次,静态块常用来执行类属性的初始化)
静态方法java静态代码块怎么写:需要在项目启动的时候就初始化,在不创建对象的情况下,这种代码是被动执行的(静态方法在类加载的时候就已经加载
可以用类名直接调用)。
两者的区别是:静态代码块是自动执行的,
静态方法是被调用的时候才执行的.
java静态代码块怎么写的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java静态代码块和静态变量、java静态代码块怎么写的信息别忘了在本站进行查找喔。






