A Java record is a special kind of java class that is used as a 'data carrier' class without the traditional 'Java ceremony' (boilerplate). This represents an immutable state that is passing immutable data between objects. The Java Record was introduced with Java 14, and it is a preview feature because it must be enabled before it can be used. Records received via a database query, records returned from a remote service call, records read from a CSV file, and other use cases can all benefit from Java Record instances.