Static Members & Utility Classes — Free Java Tutorial
Learn Static Members & Utility Classes in Java with a free, beginner-friendly tutorial, examples and practice for Indian students on Syllab.in.
TL;DR: Learn Static Members & Utility Classes in Java with a free, beginner-friendly tutorial, examples and practice for Indian students on Syllab.in.
Written & reviewed by the Syllab.in Academic Team (CBSE/NCERT subject experts) · Updated
Static Members & Utility Classes in Java
Static members (fields and methods) belong to the class itself, not to any instance. They are shared across all instances and accessed via the class name: ClassName.field or ClassName.method().
Static fields are useful for constants (static final), counters, and shared state. Static methods are utility methods that do not need instance state.
A utility class is typically a class with only static methods and a private constructor (to prevent instantiation): Math, Arrays, Collections, Objects are all utility classes.
Static initializer blocks run once when the class is loaded, before any constructor: static { ... }. Useful for initialising complex static fields.
Static Members & Utility Classes — Syntax
class Counter {
private static int count = 0; // shared across all instances
private int id;
Counter() { this.id = ++count; }
static int getCount() { return count; } // static method
int getId() { return id; } // instance method
}
// Utility class pattern
final class MathUtils {
private MathUtils() {} // prevent instantiation
static int clamp(int val, int min, int max) {
return Math.max(min, Math.min(max, val));
}
}
Learn Static Members & Utility Classes step by step with Syllab's free interactive Java tutorial — runnable code examples, practice exercises and instant AI feedback, all free with no signup. Explore the full Java course →