Enumerable is a “wide” interface with a lot of methods, and I didn’t want every implementation to have to implement every method. So I created the class EnumerableDefaults to hold those default implementations. The methods are static but the first argument is always the Enumerable.
If we only supported JDK 8 and above I would have used the feature that allows default implementations of interface methods. I was basing the linq4j API on LINQ and lack of default methods was galling, because C# has had default methods for a long time.