The JVM loads classes only when they are first used.
Lazy loading means the JVM waits to load a class until it is needed in the application, reducing memory usage and speeding up startup time. For example, in an e-commerce app, a class handling payment processing is only loaded when a transaction occurs.