Fundamentals

Default Methods

Collections

Idioms and Techniques

Design Rationale

Advanced Questions

Lambdas and closures — what’s the difference?

A closure is a lambda expression paired with an environment that binds each of its free variables to a value. In Java, lambda expressions will be implemented by means of closures, so the two terms have come to be used interchangeably in the community.