[ 개인과제 보완 ]
정수 입력 exception 처리
public class InputCheck {
// 사칙연산 입력
public static int getNum() throws CalculateException {
try {
Scanner sc = new Scanner(System.in);
System.out.print("숫자를 입력하세요: ");
int n = sc.nextInt();
return n; // 입력받은 정수를 return
} catch (InputMismatchException e) {
throw new CalculateException("올바른 정수를 입력하세요");
}
}
// 반지름 입력
public static int getNumC() throws CalculateException {
try {
Scanner sc = new Scanner(System.in);
System.out.print("반지름을 입력하세요: ");
int r = sc.nextInt();
return r;
} catch (InputMismatchException e) {
throw new CalculateException("올바른 정수를 입력하세요");
}
}
}
정수가 아닌 입력값을 받았을 때의 예외처리를 위한 클래스를 생성했다.
원래는 main 클래스 안에 메서드로 있었는데, 더 객체지향적인 코드를 작성하기 위해 클래스를 따로 생성했다.
확실히 역할이 확실히 나눠지고, 클래스 하나는 하나의 역할만 수행해야 한다는 객체지향 원칙에 더 잘 들어맞는 것 같다.
[ 보충반 수업 ]
Naming Convention
1. 패키지
- 소문자만 사용
- camel case (X), under_bar (X)
2. 클래스
- 명사
- 대문자로 시작
3. 인터페이스
- 명사, 형용사
4. 메서드
- 동사, 전치사
- 객체가 하는 일을 보여줄 수 있는 단어
5. 상수
- 대문자와 언더바로만 구성
6. 기타 변수 이름
- 임시변수 외에는 1글자 사용하지 않기 (왠만하면 변수에 뜻 담은 이름으로 만들기)
- 숫자로 시작할 수 없음
- 예약어를 변수 이름으로 사용할 수 없음
'스파르타 내배캠' 카테고리의 다른 글
[TIL] #13. Class (0) | 2024.05.08 |
---|---|
[TIL] #12. 다형성 (0) | 2024.05.07 |
[TIL] #10. URL, HTTPS (0) | 2024.05.03 |
[TIL] #9. do-while, constructor, abstract (0) | 2024.05.01 |
[TIL] #8. SRP, OCP, (Git)PR (0) | 2024.04.30 |