diff --git a/java/src/main/java/com/google/flatbuffers/Utf8Old.java b/java/src/main/java/com/google/flatbuffers/Utf8Old.java index 3dac714bb..c568105a0 100644 --- a/java/src/main/java/com/google/flatbuffers/Utf8Old.java +++ b/java/src/main/java/com/google/flatbuffers/Utf8Old.java @@ -42,8 +42,15 @@ public class Utf8Old extends Utf8 { } } + // ThreadLocal.withInitial() is not used to make the following code compatible with Android API + // level 23. private static final ThreadLocal CACHE = - ThreadLocal.withInitial(() -> new Cache()); + new ThreadLocal() { + @Override + protected Cache initialValue() { + return new Cache(); + } + }; // Play some games so that the old encoder doesn't pay twice for computing // the length of the encoded string.