Class RecordExamples

java.lang.Object
net.jrodolfo.java_evolution.java16.RecordExamples

public class RecordExamples extends Object
Demonstrates records, finalized in Java 16.

Before records, simple immutable data carriers needed a lot of mechanical code: fields, constructors, accessors, equals, hashCode, and toString. That boilerplate obscured the actual data being modeled.

Records solve this by making the state declaration central. The compiler generates a canonical constructor, accessors, equals, hashCode, and toString from the record components.

  • Constructor Details

    • RecordExamples

      public RecordExamples()
  • Method Details

    • feature

      public RecordExamples.Feature feature(String name, int version)
      Creates a feature record.
      Parameters:
      name - the feature name
      version - the Java version where it became final
      Returns:
      a feature record
    • release

      public RecordExamples.Release release(String name, int version)
      Uses a compact constructor to validate record data.
      Parameters:
      name - the language name
      version - the Java version
      Returns:
      a validated release record