Currently an enum in our project takes properties in the constructor. They are practically guaranteed to be entirely different across every different enum.
Now I'd like to add an property which is a simple boolean - and it's only different from the default in a very few specific cases.
There's 2 sensible approaches I can see here:
Refactor the constructor to take the boolean parameter, set it to true for the specific necessary ones. While this is the most consistent one with the current status quo, it also adds imho quite a bit of unnecessary clutter since it varies from the default so rarely.
Define an overridable getter Method that uses the default and override the method in the enums where it varies. I like this because it keeps the constructor "clean", but it starts introducing "magic" that might be missed or forgotten by successors in the future - especially since it hides the implementation.
Judging purely by clarity of implementation, option #1 should win by far. But my gut is not sure whether clairty can be sacrificed in this case for a little bit of extra readability.