public class FirstClass {
List<Integer> collection;
public FirstClass(List<Integer> collection) {
this.collection = collection;
}
}
public class Order {
private List<Item> items;
public Order(List<Item> items) {
this.items = items;
}
public List<Item> getItems() {
return items;
}
}
class Other {
public void method() {
//...
List<Item> items = getItems();
items.clear();
}
}
public class Items {
private final List<Item> items;
public Items(List<Item> items) {
this.items = new ArrayList<>(items);
}
public int totalPrice() {
return items.stream().mapToInt(Item::getPrice).sum();
}
public List<Item> getItems() {
return Collections.unmodifiableList(items);
}
}