본문 바로가기

프로그래밍 언어/JAVA(자바) 응용73

60.오류의 로그를 남기기 logging - 시스템 운영에 대한 기록 - 오류가 발생했을 때 그 오류에 대한 기록을 남겨 디버깅을 용이하게 함 - 로그 파일에 기록하는 코드를 추가하여 필요한 정보가 로그로 남을 수 있도록 한다. - 디버깅, 시스템 에러 추적, 성능, 문제점 향상등을 위해 사용 - 어느정도까지 로그를 남길 것인가 너무 적은 로그 : 정확한 시스템의 상황을 파악하기 어려움 너무 많은 로그 : 번번한 file I/O의 오버헤드와 로그 파일의 백업 문제 등 java.util.logging - 자바에서 기본적으로 제공되는 log package - 파일이나 콘솔에 로그 내용을 출력할 수 있음 - jre/lib/logging.properties 파일을 편집하여 로그의 출력방식 로그 레벨을 변경 할 수 있음 - logging .. 2022. 6. 5.
59.사용자 정의 예외클래스 사용자 정의 예외 클래스 구현하기 - 자바에서 제공되는 예외 클래스외에 프로그래머가 직접 만들어야 하는 예외가 있을 수 있음 - 기존 예외 클래스중 가장 유사한 예외 클래스에서 상속 받아 사용자 정의 예외 클래스를 만든다. - 기본적으로 Exception 클래스를 상속해서 만들 수 있음 패스워드에 대한 예외처리하기 - 패스워드를 입력할 때 다음과 같은 경우 오류처리를 합니다. 비밀번호는 null일 수 없습니다. 비밀번호의 길이는 5이상입니다. 비밀번호는 문자로만 이루어져서는 안됩니다.(하나이상의 숫자나 특수문자를 포함) - PassWordTest.java public class PassWordTest { private String password; public String getPassword() { r.. 2022. 6. 3.
58.예외 처리하기와 미루기 try-catch 문 - try 블록에는 예외가 발생할 가능성이 있는 코드를 작성하고 try 블록 안에서 예외가 발생하는 경우 catch 블록이 수행됨 try { 예외가 발생할 수 있는 코드 부분 } catch(처리할 예외 타입 e) { try 블록 안에서 예외가 발생했을 때 예외를 처리하는 부분 } - 프로그래머가 예외를 처리해줘야 하는 예 (배열의 오류 처리) - FileExceptionHandling.java public class ArrayExceptionHandling { public static void main(String[] args) { int[] arr = {1,2,3,4,5}; try { for(int i =0; i 2022. 6. 2.
57.예외처리 프로그램에서의 오류 - 컴파일 오류 (Compile error) 프로그램 코드 작성 중 발생하는 문법적 오류 최근에는 개발 환경(eclipse)에서 대부분의 컴파일오류는 detection 됨 - 실행 오류 (Runtime error) 실행 중인 프로그램이 의도 하지 않은 동작(bug)을 하거나 프로그램이 중지되는 오류 실행 오류는 비정상 종료가 되는 경우 시스템의 심각한 장애를 발생할 수 있음 예외 처리의 중요성 - 프로그램의 비정상 종료를 피하여 시스템이 원할이 실행되도록 함 - 실행 오류가 발생한 경우 오류의 과정을 재현하는 것은 현실적으로 힘들다 - 오류가 발생한 경우 log를 남겨서 추후 log 분석을 통해 그 원인을 파악하여 bug를 수정하는 것이 중요 오류와 예외 클래스 - 시스템 오류(err.. 2022. 6. 2.