<dependency> <groupId>org.immutables</groupId> <artifactId>value</artifactId> <version>2.8.8</version> </dependency> @Value.Immutable public interface User { String getName(); int getAge(); List<String> getInterests(); } groovy dependencies { compileOnly 'org.immutables:value:2.8.8' annotationProcessor 'org.immutables:value:2.8.8' annotationProcessor 'org.immutables:builder:2.8.8' } User user1 = ImmutableUser.builder() .name("Alice") .age(25) .interests(Arrays.asList("Java", "Reading")) .build(); User user2 = ImmutableUser.builder() .name("Bob") .age(28) .interests(Arrays.asList("Music", "Sports")) .build(); @Value.Style( visibility = ImplementationVisibility.PUBLIC, builderVisibility = Value.Style.BuilderVisibility.PUBLIC, get = {"is*", "get*"}, typeAbstract = {"Abstract*", "*IF"}, typeImmutable = "*Immutable", build = "new" ) public @interface ConfigStyle {}


上一篇:
下一篇:
切换中文