@Test void cc(){ Num_01 num_01 = new Num_01(); num_01.setAa(Num_test1.age); num_01.setBb(Num_test1.name); System.out.println(num_01.toString()); System.out.println(num_01.getAa().getValue()); } 配合上面的代码为什么打印为null
时间: 2024-04-15 14:28:21 浏览: 8
根据你提供的代码,打印为`null`的原因是因为在`Num_01`类中,可能没有正确地设置枚举类型的值。
请确保在`Num_01`类中定义了相应的属性和相应的getter和setter方法。并且在设置枚举类型的值时,使用正确的枚举成员作为参数。
以下是一个可能的解决方案:
```java
public class Num_01 {
private Num_test1 aa;
private Num_test1 bb;
public Num_test1 getAa() {
return aa;
}
public void setAa(Num_test1 aa) {
this.aa = aa;
}
public Num_test1 getBb() {
return bb;
}
public void setBb(Num_test1 bb) {
this.bb = bb;
}
@Override
public String toString() {
return "Num_01{" +
"aa=" + aa +
", bb=" + bb +
'}';
}
}
```
在上述代码中,我们创建了一个名为`Num_01`的类,并为其定义了`aa`和`bb`两个属性,以及对应的getter和setter方法。我们还重写了`toString()`方法,用于打印对象的字符串表示形式。
确保在测试方法中正确设置枚举类型的值,如下所示:
```java
@Test
void cc() {
Num_01 num_01 = new Num_01();
num_01.setAa(Num_test1.age);
num_01.setBb(Num_test1.name);
System.out.println(num_01.toString());
System.out.println(num_01.getAa().getValue());
}
```
这样,当你运行`cc()`方法时,应该能够正确打印出对象的字符串表示形式以及枚举类型的值。请确保以上步骤都正确执行,以避免打印为`null`的问题。