Java
Sealed Classes
Java 17+ sealed classes.
By EZ4Code Team
sealedinheritance
Code
// Sealed class
public sealed abstract class Shape
permits Circle, Square, Triangle {}
public final class Circle extends Shape {
private final double radius;
public Circle(double r) { radius = r; }
}
public final class Square extends Shape {
private final double side;
public Square(double s) { side = s; }
}
public final class Triangle extends Shape {
private final double base, height;
public Triangle(double b, double h) { base = b; height = h; }
}
// Exhaustive matching
double area(Shape shape) {
return switch (shape) {
case Circle c -> Math.PI * c.radius * c.radius;
case Square s -> s.side * s.side;
case Triangle t -> 0.5 * t.base * t.height;
};
}Explanation
Sealed classes restrict which classes can inherit from them; the compiler can perform exhaustiveness checks.
More Java Snippets
String Operations and StringBuilder
Manipulate strings with split, join, substring, and StringBuilder in Java.
Stream API
Process collections using the Stream API.
Lambda Expressions
Simplify code with Lambda expressions.
Optional
Handle null values elegantly.
Collection Operations
Common operations on List, Set, and Map.
Exception Handling
try-catch-finally and custom exceptions.