NotEnoughStockException에 대해서 조금만 더 자세한 설명 부탁드려도 될까요?
674
작성한 질문수 58
그리고 5개를 오버라이드를 했는데 오버라이드를 할 수 있는 메소드들은 많이 있는데 그중에 어떤 메소드들을 오버라이드를 하는지, 그리고 그 메서드들을 오버라이드를 하는 이유와 마지막 한개는 필요가 없는 이유를 조금만 더 명확하게 알고 싶습니다.
답변 2
0
제가 Java를 잘 몰라서 그런지 영상을 여러 번 돌려봤는데 이해가 안 됩니다.
여기 답변을 보고 오래된 자바 책을 다시 꺼내 봤지만, 어떻게 검색 해봐야할지 몰라서 다시 질문 남깁니다. 아래 장면입니다.
"메시지 같은 걸 넘겨서 이걸 다 넘겨주고 메시지랑 플러스 이 예외가 발생한 어떤 근원적인 exception을 또 넣어서 이제 그 익셉션 트레이스가 쭉 나오게 할 수 있거든요."
RuntimeException에 있는 메서드를 추가 로직 없이 그대로 override하고 마지막 protected 메서드는 하나 지우셨는데요.
이렇게 해서 얻을 수 있는 추가 기능이 (override하지 않는 것 대비) 어떤 게 있나요?
그렇다 하더라도 마지막 메서드를 지우신 이유도 궁금하고요.
1
안녕하세요. 주영익님
마지막에 있는 protected는 여기서 사용하지 않아서 단순하게 지웠습니다. (크게 의미가 있는 것은 아닙니다.)
여기서 핵심은 message와 cause입니다.
자바 예외에서 부모 타입에 message와 cause가 있는데요. 여기에 오류 메시지와 어떤 예외 때문에 이 예외가 발생했는지를 넘겨주면 예외 트레이스를 확인할 때 오류 메시지는 물론이고, 앞서 발생한 예외도 함께 출력할 수 있습니다.
만약 앞서 발생한 예외가 없다면 cause를 사용하지 않습니다.
이 부분은 예외를 하나 강제로 발생시켜서 cause에 넣어보신 다음에 e.printStacktrace()를 호출해보시면 이해가 되실거에요.
감사합니다.
0
왜 질문을 이해 못 하셨는지 이제 알았습니다. 기초적인 문법인데 혼란이 왔어요.
다른 언어에서 custom runtime exception을 만들 때, 부모와 동일한 기능을 하면 생성자를 만들지 않아도 되는데(스크립트형 언어들처럼 생성자 메서드가 부모와 동일한 경우, 즉 클래스명을 생성자로 쓰지 않는 경우), 생각해보니 java에서는 너무 당연하게 자식 클래스의 생성자가 필요하네요.
그래서 당장 NotEnoughStockException(String message)만 사용하지만, 앞으로 사용될 수도 있는 생성자를 미리 만들어두셨구나 하고 이해했습니다.
혼란한 댓글 남겨 죄송합니다.
OrderServiceTest 상문주문 테스트 시 update 쿼리 문의
0
27
1
sdk 설정 오류
0
65
2
오탈자 - @Transactional
0
62
1
src/test/resources 테스트 경로 문제
0
56
1
상품 등록후 H2 db 출력 순서 바꿀 수 있나요?
0
70
1
MemberRepositoryTest 실행오류
0
89
1
boot 4.x >>> trasasction rolled back log & p6spy(영한님, 수업 자료 업데이트 해주시면 감사하겠습니다!!)
1
195
2
강의 마지막 QueryDSL 사용 부분 질문있습니다
1
153
2
클라이언트에서 isbn과 author 수정 요청을 한 경우에 대해 질문드립니다.
0
56
1
도메인 모델 패턴 vs 트랜잭션 스크립트 패턴
0
80
1
기본 생성자
0
66
1
h2 DB 연결시 jdbc url 변경 이유가 궁금합니다.
0
106
1
멤버서비스테스트 부분에서 막힙니다.
0
173
4
실무에서도 EntityManager를 이용해서 많이 작업하는 편일까요?
0
124
1
초반에 h2 다운로드 과정 꼭 필요한가요?
0
128
2
자신 필드에도 get으로 접근하는 이유가 있을까요?
0
121
1
24분 27초 연관관계 편의 메서드 위치
0
118
1
단건 주문만 가능하게 한건 의도한 부분이신가요?
0
114
2
빌드 툴, Gradle
0
63
1
h2연결은 된 것 같은데 엔티티 테이블까지 작성 후 확인해보아도 테이블이 안보입니다
0
81
2
Repository에서 EntityManager 주입 방식 차이
0
97
1
롬복과 사용자 정의 setter 메서드
0
77
1
주문 목록 조회 fetch join 질문드립니다
0
91
1
dirty checking 질문드립니다.
0
86
1





