java中static可以重新赋值吗
时间: 2023-07-25 22:05:28 浏览: 87
对于 Java 中的静态变量(static variable),可以被重新赋值。但是,需要注意的是,一旦静态变量被重新赋值,那么该变量的值将会在整个程序的生命周期中保持不变,直到下一次被重新赋值。
以下是一个静态变量重新赋值的示例代码:
```
public class MyClass {
public static int myStaticVar = 10;
public static void main(String[] args) {
System.out.println("myStaticVar = " + myStaticVar);
myStaticVar = 20;
System.out.println("myStaticVar = " + myStaticVar);
}
}
```
该代码会输出以下结果:
```
myStaticVar = 10
myStaticVar = 20
```
从输出结果可以看出,静态变量 `myStaticVar` 被重新赋值为 20,程序在输出时也正确地显示了该变量的新值。
相关问题
java static final变量赋值
在Java中,static final变量是一个常量,其值在声明时或在静态初始化块中进行赋值,并且不能再被修改。
有两种常见的方式来给static final变量赋值:
1. 直接赋值:可以在声明时直接给变量赋一个常量值。例如:
```java
public class MyClass {
public static final int CONSTANT = 10;
}
```
在这个例子中,常量CONSTANT的值被设置为10,它不能再被修改。
2. 静态初始化块赋值:如果需要进行一些计算或逻辑操作来确定常量的值,可以使用静态初始化块来进行赋值。例如:
```java
public class MyClass {
public static final int CONSTANT;
static {
// 一些逻辑操作
CONSTANT = calculateConstantValue();
}
private static int calculateConstantValue() {
// 计算常量的值
return 20;
}
}
```
在这个例子中,静态初始化块中的逻辑操作会计算常量CONSTANT的值,并将其赋给变量。一旦赋值完成,常量的值就不能再被修改。
无论是直接赋值还是通过静态初始化块赋值,static final变量都应该使用大写字母命名,并且多个单词之间用下划线分隔,以增加可读性。
可以给java中的static int赋初值吗
### 回答1:
是的,可以给 Java 中的 static int 变量赋初值。在 Java 中,类的静态变量可以在声明时直接初始化,也可以在静态代码块中初始化。例如:
```java
public class MyClass {
static int myStaticInt = 10;
static {
myStaticInt = 20;
}
}
```
上述代码中,myStaticInt 变量在声明时被初始化为 10,然后在静态代码块中被重新赋值为 20。注意,静态变量的值会在类加载时被初始化,因此对于 final static 变量,它必须在声明时或静态代码块中被初始化,并且不能再被修改。
### 回答2:
可以给java中的static int赋初值。在Java中,static关键字表示在类级别上定义的静态变量或静态方法。静态变量在类的所有实例之间共享,并且可以在没有创建类的实例的情况下使用。
对于静态int变量,可以在声明时为其赋初值。例如,可以这样声明并初始化一个静态int变量:
```java
public class MyClass {
static int myStaticInt = 10;
public static void main(String[] args) {
System.out.println(myStaticInt); // 输出10
}
}
```
在上面的例子中,通过使用"static"关键字,我们创建了一个静态int变量myStaticInt,并将其初始化为10。可以在类的任何地方使用该静态变量,就像在main方法中的System.out.println语句中所示。
需要注意的是,静态变量在内存中只有一份拷贝,可以被类的所有实例访问,因此当一个实例修改静态变量的值时,其他实例也会受到影响。
总结而言,可以给Java中的静态int变量赋初值。这样做可以确保在使用该变量之前,它已经被正确初始化,并且可以在类的任何地方访问和使用。
### 回答3:
在Java中,对于static int ,是可以给其赋初值的。当我们声明static int变量时,如果不为其赋初值,默认情况下会被赋予0作为初始值。如果我们想要给static int变量赋予不同的初始值,可以使用赋值运算符来实现。
例如:
public class Example {
static int count = 0; // 初始值为0的static int变量
public static void main(String[] args) {
System.out.println("初始值为: " + count);
count = 10; // 重新赋值给static int变量
System.out.println("修改后的值为: " + count);
}
}
在上述例子中,我们声明了一个名为count的static int变量,并赋予其初始值为0。然后在main方法中,我们通过将count变量重新赋值为10来修改初始值。最终,在控制台上输出修改后的值为10。
总之,可以给Java中的static int变量赋予初始值,并且我们可以在程序中随时修改其值。