gpt4 book ai didi

java - 从静态 block 或方法初始化静态最终 int 并在注释中使用它

转载 作者:行者123 更新时间:2023-12-01 17:05:31 25 4
gpt4 key购买 nike

我有以下 Foo 测试类和 Bar 测试类文件

public class Foo{

public static final int timeLimit;

static{
timeLimit=10000;
}

@Test(timeOut=timeLimit)
public void fooTest{
//timeout annotation is just used to specify the
//maximum execution time for this test method
}
}


public class Bar{

public static final int timeLimit=10000;

@Test(timeOut=timeLimit)
public void barTest{
//timeout annotation is just used to specify the
//maximum execution time for this test method
}
}

当我尝试编译这两个类时,Bar 可以正确编译,但 Foo 类说超时应该分配一个常量值,有人可以解释为什么吗?

最佳答案

注释属性只能分配 constant expressions (和 few other types )。

Foo

public static final int timeLimit;

static{
timeLimit=10000;
}

@Test(timeOut=timeLimit)

变量timeLimit不是常量表达式。

关于java - 从静态 block 或方法初始化静态最终 int 并在注释中使用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25748868/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com