Измените ваш класс следующим образом
public class myClass {
public ArrayList myList;
public ArrayList getList() {
return myList;
}
public void setList(ArrayList myList) {
listler.myList = myList;
}
Вы используете static ArrayList myList
, который является общим для всех объектов вашего класса myClass
.Следовательно, вы не получаете то, что ожидаете.Избегайте использования static, если вам нужно использовать ArrayList myList
отдельно для всех объектов класса.
Java позволяет вам получить доступ к статическим членам класса как с его объектами, так и сассоциирование их с именем класса, но плохая практика - связывать статические члены с объектами класса.
Связывание самих статических членов с объектом класса на самом деле является недостатком в самой языковой структуре (следовательно, должно бытьизбегать доступа к ним с помощью объектов), что было исправлено в C #, и, следовательно, в C # нельзя связывать статические члены с соответствующими объектами класса.
В Java некоторые IDE могут выдавать предупреждения или ошибки, если вы попытаетесьдля доступа к статическим членам с соответствующими объектами класса.