<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Records on Devops Monk</title><link>https://devops-monk.com/tags/records/</link><description>Recent content in Records on Devops Monk</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Mon, 04 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://devops-monk.com/tags/records/index.xml" rel="self" type="application/rss+xml"/><item><title>Record Patterns (JEP 440): Destructuring Records with Power and Precision</title><link>https://devops-monk.com/tutorials/java21/record-patterns/</link><pubDate>Mon, 04 May 2026 00:00:00 +0000</pubDate><guid>https://devops-monk.com/tutorials/java21/record-patterns/</guid><description>Records Recap Records (Java 16, JEP 395) are transparent carriers of immutable data:
record Point(int x, int y) {} record ColoredPoint(Point point, String color) {} record Line(Point start, Point end) {} The compiler generates a constructor, accessor methods (x(), y()), equals, hashCode, and toString. Before Java 21, accessing record components required calling accessor methods:
Object obj = new ColoredPoint(new Point(3, 4), &amp;#34;red&amp;#34;); if (obj instanceof ColoredPoint cp) { int x = cp.</description></item><item><title>Records (JEP 395): Immutable Data Classes Without the Boilerplate</title><link>https://devops-monk.com/tutorials/java17/records/</link><pubDate>Mon, 04 May 2026 00:00:00 +0000</pubDate><guid>https://devops-monk.com/tutorials/java17/records/</guid><description>Finalized in Java 16 (JEP 395). Available in all Java 16+ releases, including Java 17. Previous previews: Java 14 (JEP 359) and Java 15 (JEP 384).
The Problem: Data Classes in Java Writing a simple immutable data class in Java 11 requires significant boilerplate:
public final class Point { private final int x; private final int y; public Point(int x, int y) { this.x = x; this.y = y; } public int x() { return x; } public int y() { return y; } @Override public boolean equals(Object o) { if (this == o) return true; if (!</description></item></channel></rss>