java 对象new时初始化 string 属性 是否会赋默认值
时间: 2024-03-14 22:46:23 浏览: 64
java对象初始化代码详解
在Java中,如果在类中定义了String类型的属性,那么在创建该类的对象时,如果没有显式地为该属性赋值,那么该属性会被自动赋予一个默认值,即null。
例如,定义一个Person类:
```java
public class Person {
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
```
如果在创建Person对象时没有为name属性赋值,那么name的值就会是null。如下代码示例:
```java
public class Main {
public static void main(String[] args) {
Person person = new Person();
System.out.println(person.getName()); //输出null
}
}
```
需要注意的是,如果在类中定义了String类型的属性,并且在该属性的声明时已经为其赋了初值,那么在创建对象时,该属性会被初始化为声明时的初值而不是null。例如:
```java
public class Person {
private String name = "default";
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
```
在创建Person对象时,name属性的值就会被初始化为"default"而不是null。如下代码示例:
```java
public class Main {
public static void main(String[] args) {
Person person = new Person();
System.out.println(person.getName()); //输出default
}
}
```
阅读全文