Add implements statement.

Internal classes should implement Spliterator contract. This works
around a bug in J2CL where accidental overrides cause issues in
compilation.

Change-Id: Ia7075352f676956777cc752df5dda1069737c37b
diff --git a/user/super/com/google/gwt/emul/java/util/Spliterators.java b/user/super/com/google/gwt/emul/java/util/Spliterators.java
index f14bad7..0926bac 100644
--- a/user/super/com/google/gwt/emul/java/util/Spliterators.java
+++ b/user/super/com/google/gwt/emul/java/util/Spliterators.java
@@ -34,7 +34,8 @@
  */
 public final class Spliterators {
 
-  private static class BaseSpliterator<T, S extends Spliterator<T>> {
+  private abstract static class BaseSpliterator<T, S extends Spliterator<T>>
+      implements Spliterator<T> {
     private final int characteristics;
     private long sizeEstimate;
 
@@ -219,7 +220,8 @@
     return new LongConsumerIterator(spliterator);
   }
 
-  private abstract static class EmptySpliterator<T, S extends Spliterator<T>, C> {
+  private abstract static class EmptySpliterator<T, S extends Spliterator<T>, C>
+      implements Spliterator<T> {
 
     static final Spliterator<Object> OF_REF = new EmptySpliterator.OfRef<>();
     static final Spliterator.OfDouble OF_DOUBLE = new EmptySpliterator.OfDouble();
@@ -580,7 +582,8 @@
     }
   }
 
-  private abstract static class BaseArraySpliterator<T, S extends Spliterator<T>, C> {
+  private abstract static class BaseArraySpliterator<T, S extends Spliterator<T>, C>
+      implements Spliterator<T> {
     private int index;
     private final int limit;
     private final int characteristics;