diff --git a/gson/src/main/java/com/google/gson/JsonArray.java b/gson/src/main/java/com/google/gson/JsonArray.java index 66020839..efaea81d 100644 --- a/gson/src/main/java/com/google/gson/JsonArray.java +++ b/gson/src/main/java/com/google/gson/JsonArray.java @@ -40,7 +40,8 @@ public final class JsonArray extends JsonElement implements Iterable(); } - @Override public JsonArray deepCopy() { + @Override + protected JsonArray deepCopy() { JsonArray result = new JsonArray(); for (JsonElement element : elements) { result.add(element.deepCopy()); diff --git a/gson/src/main/java/com/google/gson/JsonElement.java b/gson/src/main/java/com/google/gson/JsonElement.java index 3e09f934..79a046a9 100644 --- a/gson/src/main/java/com/google/gson/JsonElement.java +++ b/gson/src/main/java/com/google/gson/JsonElement.java @@ -35,7 +35,7 @@ public abstract class JsonElement { * Returns a deep copy of this element. Immutable elements like primitives * and nulls are not copied. */ - public abstract JsonElement deepCopy(); + protected abstract JsonElement deepCopy(); /** * provides check for verifying if this element is an array or not. diff --git a/gson/src/main/java/com/google/gson/JsonNull.java b/gson/src/main/java/com/google/gson/JsonNull.java index e887c44b..9eb7cb8b 100755 --- a/gson/src/main/java/com/google/gson/JsonNull.java +++ b/gson/src/main/java/com/google/gson/JsonNull.java @@ -40,7 +40,8 @@ public final class JsonNull extends JsonElement { // Do nothing } - @Override public JsonNull deepCopy() { + @Override + protected JsonNull deepCopy() { return INSTANCE; } diff --git a/gson/src/main/java/com/google/gson/JsonObject.java b/gson/src/main/java/com/google/gson/JsonObject.java index 0c6e911f..b9fd8b12 100644 --- a/gson/src/main/java/com/google/gson/JsonObject.java +++ b/gson/src/main/java/com/google/gson/JsonObject.java @@ -42,7 +42,8 @@ public final class JsonObject extends JsonElement { public JsonObject() { } - @Override public JsonObject deepCopy() { + @Override + protected JsonObject deepCopy() { JsonObject result = new JsonObject(); for (Map.Entry entry : members.entrySet()) { result.add(entry.getKey(), entry.getValue().deepCopy()); diff --git a/gson/src/main/java/com/google/gson/JsonPrimitive.java b/gson/src/main/java/com/google/gson/JsonPrimitive.java index f1ae2dc4..b0779ff2 100644 --- a/gson/src/main/java/com/google/gson/JsonPrimitive.java +++ b/gson/src/main/java/com/google/gson/JsonPrimitive.java @@ -16,12 +16,12 @@ package com.google.gson; -import com.google.gson.internal.$Gson$Preconditions; -import com.google.gson.internal.LazilyParsedNumber; - import java.math.BigDecimal; import java.math.BigInteger; +import com.google.gson.internal.$Gson$Preconditions; +import com.google.gson.internal.LazilyParsedNumber; + /** * A class representing a Json primitive value. A primitive value * is either a String, a Java primitive, or a Java primitive @@ -85,7 +85,8 @@ public final class JsonPrimitive extends JsonElement { setValue(primitive); } - @Override public JsonPrimitive deepCopy() { + @Override + protected JsonPrimitive deepCopy() { return this; }