Java Records: Stop Writing Boilerplate for Simple Data Carriers
Java records (finalized in JDK 16) eliminate the constructor/getter/equals/hashCode/toString ceremony for data carriers. A worked Point2D example, bytecode inspection, and honest limitations.