A safe way is to serialize the object, then deserialize. This ensures everything is a brand new reference.
Here’s an article about how to do this efficiently.
Caveats: It’s possible for classes to override serialization such that new instances are not created, e.g. for singletons. Also this of course doesn’t work if your classes aren’t Serializable.
Related Posts:
- What does “Could not find or load main class” mean?
- What does “Could not find or load main class” mean?
- How do I resolve ClassNotFoundException?
- Java: Multiple class declarations in one file
- what is the difference between `public class` and just `class`?
- What does .class mean in Java?
- How to identify object types in java
- implicit super constructor Person() is undefined. Must explicitly invoke another constructor?
- What is the difference between Integer and int in Java?
- Java Class File Editor
- Import a custom class in Java
- Java The method is undefined for this type
- java sort using anonymous class
- Import a custom class in Java
- Error: Generic Array Creation
- Java – get the current class name?
- Call a Class From another class
- .class vs .java
- What is a class constant?
- Why do some classes require main methods and others do not?
- Node cannot be resolved to a type
- incompatible types: void cannot be converted to int [duplicate]
- Could not find or load main class with a Jar File
- Class Declarations for temperature program in Java
- How can I design a class named allergy?
- How to check if a String contains another String in a case insensitive manner in Java?
- Failed to write core dump. minidumps are not enabled by default on client version of windows
- Editor does not contain a main type in Eclipse [duplicate]
- How to replace � in a string
- How to decrypt a SHA-256 encrypted string?
- What’s the C++ version of Java’s ArrayList
- Can’t find mysqladmin on Mac OSX 10.6.8
- What is an AssertionError? In which case should I throw it from my own code?
- How to write a Unit Test?
- Iterate through a HashMap [duplicate]
- Java optional parameters
- Why would a “java.net.ConnectException: Connection timed out” exception occur when URL is up?
- Compiling a java program into an executable
- Java Installation Not Completed / Unable to install Java
- How can I open Java .class files in a human-readable way?
- Convert an integer to an array of characters : java
- How to compare dates in Java?
- Java integer-double division confusion
- Example of O(n!)?
- A message body writer for Java class java.util.ArrayList and MIME media type application/json was not found
- How to efficiently remove duplicates from an array without using Set
- How to master Java?
- Understanding the difference between null and ‘\u000’ in Java
- “Instantiating” a List in Java? [duplicate]
- HTTP Status 405 – Request method ‘POST’ not supported (Spring MVC)
- Missing `server’ JVM (Java\jre7\bin\server\jvm.dll.)
- Convert String array to ArrayList
- java uses or overrides a deprecated API error
- What is setBounds and how do I use it?
- Exception in thread “main” java.lang.NumberFormatException: For input string: “S”
- Java Console Prompt for ENTER input before moving on [duplicate]
- Maven: Failed to read artifact descriptor
- The system cannot find the file specified in java
- Java Generate Random Number Between Two Given Values
- Error: JAVA_HOME is not defined correctly executing maven
- Eclipse No tests found using JUnit 5 caused by NoClassDefFoundError for LauncherFactory
- Android – SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length
- How to sort an array of objects in Java?
- Filling a 2D array in Java
- How to compress a String in Java?
- Java error: void cannot be converted to String
- CreateProcess error=2, The system cannot find the file specified
- Add String Array to ArrayList
- Java Array Sort descending?
- The import javafx cannot be resolved
- Java Copy Constructor ArrayLists
- Implementing an actionlistener to a JTextField
- StringIndexOutOfBoundsException String index out of range: 0
- Cannot resolve method in java
- How to Set JPanel’s Width and Height?
- addMouseListener for a JPanel
- calling boolean method, heads or tails
- Android Color Picker
- How to fix an UnsatisfiedLinkError (Can’t find dependent libraries) in a JNI project
- How to Delete a topic in apache kafka [duplicate]
- Java Main Game Loop
- “Integer number too large” error message for 600851475143
- How to fix java.lang.UnsupportedClassVersionError: Unsupported major.minor version
- JPA or JDBC, how are they different?
- Why is Netbeans suggesting I “Flip operands of the binary operators” in my Java code
- How to return nothing from a function that returns value?
- Java simple code: java.net.SocketException: Unexpected end of file from server
- What is the best Java email address validation method?
- Set Date in a single line
- Good way to encapsulate Integer.parseInt()
- What is the difference between “Double” and “double” in Java?
- What is the purpose of the default keyword in Java?
- What exactly is Ajax request? Is it different from Servlet Request?
- java ‘jar’ is not recognized as an internal or external command
- A JRE or JDK must be available in order to run Eclipse. No JVM was found after searching the following locations
- Why cannot cast Integer to String in java?
- java.util.ConcurrentModificationException with iterator
- How to read file from relative path in Java project? java.io.File cannot find the path specified
- How can I view and edit specific aspects of playerdata from my Minecraft server?
- String index out of bounds exception java