public
class
ProductRepository {
private
List<Product> items =
new
ArrayList<>();
public
List<Product> getProductList() {
return
items;
}
public
void
addProduct(Product product) {
items.add(product);
}
public
void
updateProduct(Product product) {
int
index = items.indexOf(product);
if
(index <
0
) {
throw
new
RuntimeException(
"아이템을 찾을 수 없습니다."
);
}
items[index] = product;
}
public
void
removeProduct(Product product) {
items.remove(product);
}
public
void
clear() {
items.clear();
}
}
public
class
Activity1.... {
private
ProductAdapter produtAdapter;
private
ProdcuctRepository productRepository;
@Override
public
void
onCreate(...) {
super
.onCreate(...);
setContentView(...);
Button addBtn = ...
addBtn.setOnClickListener(v -> addProduct());
productRepository =
new
ProductRepository();
produtAdapter =
new
ProductAdapter();
fetchProductList();
}
private
void
fetchProductList() {
List<Product> productList = productRepository.getProductList()
produtAdapter.setItems(productList);
}
private
void
addProduct() {
Product product = ...
productRepository.addProduct());
fetchProductList();
}
}
public
class
Activity2 .... {
}