Java Inner Class vs Static Nested Class: Differences, Use Cases, and When to Choose Each | CodeTrail