当前位置: 首页 > 知识库问答 >
问题:

将类与不可变项一起使用

陆海阳
2023-03-14

我给你的是不可变的。试试看。我需要的是能够指定一个类,所以我定义了

@Value.Immutable
public interface Value<T> {
    Class<T> getType();
}

由immutables生成的生成器不接受此选项

ImmutableValue.builder().type(String.class)...

因为它需要一门课

用@Value注释类型。参数很好地创建了一个有效的方法

ImmutableValue.of(String.class)...

但结果是一个实例,而不是一个生成器,因此只能使用withers设置后续值。

共有1个答案

段干华皓
2023-03-14

可以使用类型见证推断类型。

public class ImmutableExample {
    public static void main(String[] args) {
        ImmutableValue immutableValue = ImmutableValue.<String>builder()
                .type(String.class).build();
        System.out.println(immutableValue.getType());
    }
}
 类似资料:
  • Redux framework正在使用reducers来更改应用程序状态以响应操作。 关键要求是缩减器不能修改现有的状态对象;它必须产生一个新的对象。 错误示例: 好例子: 这是一个很好的Immutable.js.用例

  • 我通常在设置配置文件后使用AWS CLI命令,使用环境变量,使用文件。这很有效。 我目前正在尝试通过环境变量设置访问权限。为此,我在文件-我从凭证文件中复制了和条目,并将它们放在我的文件中,名称为和。 环境变量正在被正确设置,然而,当我试图访问AWS资源时(在这种情况下,我试图在桶上运行一个S3命令,所以区域并不重要),我得到了消息 这对我来说很奇怪,因为钥匙是完全一样的。为了确认这一点,我切换到

  • 问题内容: 我对正则表达式很糟糕,但是我想知道是否可以将ng-pattern与变量一起使用 例如, 其中validationCode是控制器中附加到$ scope的变量 如果 则ng-pattern将是 但这不起作用,似乎我需要创建一个我真的不想要的自定义指令 问题答案: 需要一个正则表达式。 从Angular的文档中有关: 如果该值与模式表达式不匹配,则设置模式验证错误键。期望值用于内联模式或定

  • 我想在gradle中使用JMH,一个OpenJDK微基准工具。然而,我得到了关于编译的NPE。另一方面,JMH在使用maven时可以工作。 我没有发布任何,因为它是基本的-应用java插件并添加对JHM工具的依赖()。 我试过这里写的东西,但没有成功。 我还需要做什么?我想设置一个代理,但我还是没有弄清楚。 例外情况:

  • 问题内容: 我对什么是不可变类型感到困惑。我知道该float对象被认为是不可变的,在我的书中有这样的例子: 由于类的结构/层次结构,这是否被认为是不可变的?意思float是在类的顶部,是它自己的方法调用。类似于此类示例(即使我的书说的dict是可变的): 可变的东西在类内部具有方法,例如以下类型: 另外,对于最后一个,如果我将这种类型的set传递给它: 不调用该example方法,它返回一个字典。

  • 我试图使用wsgen生成wsdl文件。如果我的webservice类扩展另一个类,我得到一个错误,但如果我删除扩展它的工作。这是错误消息: 另外,wsgen-完整版本: 请注意,我只有在使用Java8时才会出现这个问题。但是当我使用Java7和wsgen版本时,同样的代码可以工作: 下面是更多的细节以及如何复制它:我正在使用Java8,我有三个文件: basewebservice.java: 包w