Java 如何使用ArrayList类型变量实现深度克隆方法

Java 如何使用ArrayList类型变量实现深度克隆方法,java,arraylist,netbeans,clone,Java,Arraylist,Netbeans,Clone,我试图创建一个深度克隆方法,但该类包含一个ArrayList类型变量。我需要能够深度克隆它 该类称为Major,这是两个变量: private String mName; private ArrayList<Subject> mCores; 然而,我得到了一个错误 at testStudentSystem.Major.clone(Major.java:52) 我如何实现这个大类的深层克隆。谢谢。您遇到了什么错误?线程“main”java.util.ConcurrentModif

我试图创建一个深度克隆方法,但该类包含一个ArrayList类型变量。我需要能够深度克隆它

该类称为Major,这是两个变量:

 private String mName;
private ArrayList<Subject> mCores;
然而,我得到了一个错误

at testStudentSystem.Major.clone(Major.java:52)

我如何实现这个大类的深层克隆。谢谢。

您遇到了什么错误?线程“main”java.util.ConcurrentModificationException中的异常位于java.util.ArrayList$Itr.checkForComodification(ArrayList.java:909)中的异常位于java.util.ArrayList$Itr.next(ArrayList.java:859)中的异常位于testStudentSystem.Major.clone(Major.java:52)这是否有助于我特别使用我创建的克隆方法“受保护的主要克隆()抛出CloneNotSupportedException{”,我只是不知道在方法内部该做什么,因为有一个arraylist。如果变量mCores是类型Subject,它会更简单,但我仅限于严格使用arraylist mCores,并在方法内部实现它以深度克隆主主题。
at testStudentSystem.Major.clone(Major.java:52)