-
내일배움캠프 11일차코딩공부 2023. 5. 30. 20:18
오늘은 개인 과제 (키오스크 만들기)를 시작했다.
아래 코드를 작성했더니 다음과 같은 에러 메세지가 떴다.
Cannot resolve symbol 'add'
Product (int number, String name, String explan, double price) { this.number = number; this.name = name; this.explan = explan; this.price = price; } ArrayList<Product> productList = new ArrayList<Product>(); productList.add(new Product(1, "coffie", "delicious", 2.0));
알고보니 add를 main메소드 내에서 작동시켜야 했던 것이다.
메인 메소드 안에 밑의 코드 두 줄을 넣으니 에러 메시지가 뜨지 않았다.
나는 전체 메뉴 분류와 그 밑의 개별 메뉴를 ArrayList를 활용하여 저장하려 했는데, 잘 활용이 되지 않자, 내가 적합한 방식을 채택한 것인지 불안감이 들었다.
매니저님께 조언을 구하자 매니저님께서는 사용할 수 있는 방법 중 하나라고 하시면서 전체 메뉴와 개별 메뉴 리스트 사이에 포함관계를 만드는 것이 좋겠다고 조언해 주셨다.
아래는 내가 매니저님과 실습해 본 것을 최대한 떠올리면서 다시 작성해 본 것이다.
public static void main(String[] args) { ArrayList<Menu> menuList = new ArrayList<Menu>(); Menu coffee = new Menu(1, "커피", "delicious"); Menu tea = new Menu(2, "티", "delicious"); Menu adeJuice = new Menu(3, "에이드&주스", "delicious"); Menu smoothie = new Menu(4, "스무디&프라페", "delicious"); Menu dessert = new Menu(5, "디저트", "delicious"); menuList.add(coffee); menuList.add(tea); menuList.add(adeJuice); menuList.add(smoothie); menuList.add(dessert); Product Americano = new Product(1, "Americano", "delicious", 2.0); coffee.addProducts(Americano); }
public class Menu { int number = 0; String name = "coffie"; String explan = "delicious!"; ArrayList<Product> products = new ArrayList<Product>(); Menu (int number, String name, String explan) { this.number = number; this.name = name; this.explan = explan; } void addProducts (Product product) { this.products.add(product); }
분명히 강의에서도 배운 내용인 것 같은데 아직은 헷갈리고 불안한 부분이 많았다. 차차 익숙해지기를 바란다.
이후로는 특별히 어려운 부분 없이 과제가 작성되었다.
메모
루시드차트 - 설계를 위한 툴
오늘 할 것에 대한 메모하기 -> 필요한 것 정리(객체) -> 클래스 다이어그램 작성하기
요구사항 글로 정리하기 -> 필요한 퍼포먼스 추출하기
가장 작은 단위부터 구현하기
클린코드에 관한 책 읽기
인텔리j 단축키
- ctrl + alt + v
- ctrl + d
'코딩공부' 카테고리의 다른 글
내일배움캠프 13일차 (0) 2023.06.01 내일배움캠프 12일차 (0) 2023.05.31 깃&깃허브 특강2 (0) 2023.05.29 깃&깃허브 특강 (0) 2023.05.29 내일배움캠프 10일차 (0) 2023.05.26