안녕하세요 강사님 강사님 쉬운 설명의 강의 덕분에 계속 반복해가며 프로그래밍의 재미를 느끼는 중입니다 정말 너무 감사합니다 특히 메소드가 익숙치 않아 매개 변수에 클래스 변수, 배열등 주소값이 들어올때 마다 힘이 드는데.. 향상된 for문 까지 섞이니..ㅠ 더 이해가 되지 않습니다..ㅠ 매개변수(배열) + iter 향상된 for문을 쉽게 풀면 어떻게 되는지 궁금합니다 static void getTotalAmount(ProductOrder[] orders) for (int i = 0; i < orders.length;i++ { totalAmount += orders[i].price * orders[i].quantity 향상된 for문을 쉽게 풀이한다면 아래처럼 되는 것이 맞을까요? -> static void getTotalAmount(ProductOrder[] orders) for (int order;order<orders.length;order++) { totalAmount += orders[order].price * orders[order].quantity
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) 예 [질문 내용] AppConfig가 import되지 않는 이유가 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. AnimalPolyMain3를 보면 soundAnimal() 이라는 메서드를 만들어서 처리하는것을 보았는데,생각해보니까 그냥 animal.sound()를써서 (수정 하기 전에 for-each 라고 말해서 죄송합니다. 다시 글을 살펴보니 for-each 가 아니라 animal.sound() 였습니다) 이렇게 해도 되는데, soundAnimal()이라는 메서드 를 만드신 이유가 다른 데(즉 다른 클래스)에도 사용할 수 있기 때문에(사용하기 위해서) 이렇게 만드신 거라고 생각하면 되는 건가요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예) [질문 내용] 여기에 질문 내용을 남겨주세요. 마지막 스프링 부트 테스트에서 오류가 발생했습니다.. 강의 들으면서 똑같이 했는데 왜 저는 빈이 두개 나온다고 오류가 나올까요.... AppConfig.class 에서 @Configuration을 주석 처리 하면 스프링부트 테스트가 되긴 하는데 강의에서 주석처리하는걸 못봐서,,,,,어떻게 해야하는걸까요..?
[질문 내용] @RequiredArgsConstructor //필수값(ex final)으로 생성자를 제공 public class OrderServiceImpl implements OrderService{ private final MemberRepository memberRepository; private final DiscountPolicy discountPolicy; //final을 붙이면 값이 무조건 필요하다는 뜻 public OrderServiceImpl() { System.out.println("abc"); } } 이런식으로 @RequiredArgsConstructor 으로 final을 매개변수로 갖는 생성자와 매개변수가 없는 생성자를 따로 만들면 이런식으로 변수가 초기화 되지 않았다고 오류가 발생하는데 @RequiredArgsConstructor 은 생성자가 없을 때만 사용할 수 있는거라서 매개변수 없는 생성자를 만들었기 때문에 @RequiredArgsConstructor` 가 작동을 안 하는건가요?
[질문 내용] 영상에는 생성자 주입 테스트만 있어서 수정자 주입을 했을 때 테스트 하는 방법에 대해 생각해 봤습니다. @Test void test(){ ApplicationContext ac = new AnnotationConfigApplicationContext(OrderServiceImpl.class); MemoryMemberRepository memberRepository = new MemoryMemberRepository(); memberRepository.save(new Member(1L, "name", Grade.VIP)); OrderServiceImpl bean = ac.getBean(OrderServiceImpl.class); bean.setMemberRepository(memberRepository); bean.setDiscountPolicy(new FixDiscountPolicy()); Order order = bean.createOrder(1L, "itemA", 10000); Assertions.assertThat(order.getDiscountPrice()).isEqualTo(1000); } 이렇게 테스트 코드를 작성하는게 맞을까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 똑같이 코드를 따라한 것 같은데 NoSuchBeanDefinitionException 이 터집니다.
[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 홀수 짝수 구하는 문제에서 선생님께서 말씀하신 삼항연산자로 구하는 거 기억 더듬으며 해봤는데 값은 나오거든요.. 혹시 잘못되거나 이상한 점이 없는지 질문드립니다!!
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 강의 중 memberRepository 와 discountPolicy 주소를 출력하는 것이 안 됩니다. logback.xml 문서는 이미 작성되어 있습니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] if 조건문에 if (1 > a > 3)와 같이 &&을 안쓰고 비교 연산자 여러개를 쓰는 방법은 없나요? 만약 if조건문에 여러 조건을 넣을 땐 항상 &&을 써야하나요?
@Override public int discount(Member member, int price) { // int price 는 왜 넣지 ? if (member.getGrade() == Grade.VIP) { return discountFixAmount; } else { return 0; } } 이 메서드에서, discount의 매개변수로 member와, price를 넣고 있습니다. member 객체는 Grade의 값이 VIP인지 알아내야 하므로 넣는것을 이해하고 있습니다. 그런데 price는, 메서드 내에서 사용하지 않고 있는데 왜 price 값을 매개변수로 넣고 있나요 ? 확장 가능성 때문이라고 봐야할까요 ?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 안녕하세요. 밤에 잠이 안 와서 ,여러가지 생각들을 하다가, 문득 "객체가 뭐지?" 라는 생각을 하게 되었습니다. 근데.. 객체에 대해서 정리가 안되고, 그냥 벙찌게 되더라고요. 나중에 면접관이 객체가 뭔가?? 라는 질문이 왔을때..(물론 다들 객체에 대해서 당연히 알고 있을 거라고 생각하고 질문은 안하시겠지만) 대답을 못하겠더라고요. 객체에 대해서 말을 쓰면서도 말이죠. 만약에 객체에 대해서 설명하라고 하면 어떻게 설명 해야할지 답변 부탁드립니다. (짜증나는 다형성 맨 마지막 문제풀이 때문에 계속 복습하고 부족한게 뭘까 생각하다가 여러가지들을 공부하게 되고 생각을 하다보니 이렇게 되네요... 빨리 영한님처럼 그냥 풀고 싶네요.)
강의내용 7:00 에 등장하는 Assertions.assertThat(member).isEqualTo(findMember); 에서 member와, findMember를 isEqualTo(내용비교)를 통해 내용이 같은지 검증을 하고 있습니다. 여기서는 당연히 member와 findMember의 내용비교가 같다는 것을 이해하였습니다. 그런데 isSameAs(주소값 비교)로 검증을 해보아도 주소 값이 같다는 결과가 나왔습니다. println() 메서드를 통해 member와 findMember의 주소값이 같다라는 결과도 눈으로 확인하였습니다. member는 new Member(1L, "memberA", Grade.VIP ); 를 통해 객체를 새로 생성하여 member객체에 담았고, findMember 객체는 member의 값을 join을 통해 memberServiceImpl.join -> MemoryMemberRepository.save 를 호출하여 store에 저장되어이있는 값을 findById를 통해 가져와서 Member 타입의 findMember에 새로 저장을 했다라고 생각이 들어, 제 생각에는 member와 findMember의 주소값 비교가 다르다는 결과가 나와야 되지 않나 싶어 질문 남깁니다. member객체와 findMember의 주소값 비교가 어떻게 같을 수 있는 것인가요 ?