... 계산기 과제 中...
divide by 0 예외처리, 예외값 처리 로직 추가를 하였음
후일에 java 프로그래밍 중 예외처리 사용법을 잊어버릴 경우를 대비하여 간단히 정리해 본다.
Java에서 예외처리는,
런타임 중에 예외오류가 나올 가능성이 있는 곳에 try-catch 사용
NullPointerException과 같이 자주 사용되는 예외 클래스를 사용해도 되며
사용자 정의 클래스를 사용 가능
실제 런타임에러를 받기만(try-catch) 하거나 직접 메서드 내부에 throw해도 됨
아래는 try-catch-finally 공부 중 깔끔하게 정리해 주신 분의 블로그 글이다. 참고용
idkwhattodo님의 글: Java - 예외처리 (throw / try / catch / finally)
(의도적인 예외 + 예외 책임 전가) 요약
- 의도적인 예외처리는 직접 Exception 클래스를 사용하여 객체 정의하고 예외처리를 내고 싶은 곳에서 던짐.
- 실제 실행 메서드 calculate() 안에서 예외객체를 던진다 throw new Exception("message");
- 주의점은 throw 해야하는 메서드는 선언부에 throws Exception 등으로 명시할 것
- 메서드 호출부분, .calculate() 하는 곳에서 try-catch 시도
- catch(Exception e) { System.out.println(e.getMessage()); } 로 에러메세지 출력
- 3.의 메서드는 throws 명시 안해도 됨
예정
계산기 애플리케이션을 OOP 중점으로 설계
- 캡슐화
- app 사칙연산 기능 + 원의 넓이 계산 기능(new!)
- 접근 지정자 활용, static final
- 클래스 상속 활용
- 인터페이스 활용
- SRP(단일 책임 원칙): 클래스 하나 당 하나의 기능, 클래스의 서비스는 하나의 기능을 위해 동작함