Luigit
repositories / dotfiles

dotfiles

bugabingas dorkfiles

owned by admin

pi/agent/skills/optional/java/java-final-field-mutation/examples/jep-500.md

Raw
Rendered preview

JEP 500 examples

Source: https://openjdk.org/jeps/500

class C {
    final int x;
    C() { x = 100; }
}

Field f = C.class.getDeclaredField("x");
f.setAccessible(true);
f.set(new C(), 200); // JDK 26 warns by default
java --illegal-final-field-mutation=debug -jar app.jar
java --illegal-final-field-mutation=deny  -jar app.jar
java --enable-final-field-mutation=com.example.serializer -jar app.jar
# [JEP 500](https://openjdk.org/jeps/500) examples

Source: https://openjdk.org/jeps/500

```java
class C {
    final int x;
    C() { x = 100; }
}

Field f = C.class.getDeclaredField("x");
f.setAccessible(true);
f.set(new C(), 200); // JDK 26 warns by default
```

```bash
java --illegal-final-field-mutation=debug -jar app.jar
java --illegal-final-field-mutation=deny  -jar app.jar
java --enable-final-field-mutation=com.example.serializer -jar app.jar
```