static ArrayList<SomeClass> arr; public static void main(String[] args) { arr = new ArrayList<>(); GenerateNewObjects(new SomeClass, 3); //Вот тут надо создавать новый экземпляр } public static void GenerateNewObjects(SomeClass obj, int count) { for (int i = 0; i < count; i++){ arr.add(i, obj); } } SomeClass class abstract
Did so:
static ArrayList<SomeClass> arr; public static void main(String[] args) { arr = new ArrayList<>(); GenerateNewObjects(new SomeClass1, 3); //SomeClass1 extends SomeClass } public static void GenerateNewObjects(SomeClass obj, int count) { for (int i = 0; i < count; i++){ arr.add(i, obj.getClass().newInstance(), c); } catch (InstantiationException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); }); } }