
예외처리 자바에서 예외처리라고 하면 보통 두가지 방법이 거론된다. try-catch 문으로 감싸주는 방식과 throws 로 던져주는 방식인데, 이번에 새로 배운 사실은 엄밀히 말하자면 throws 는 예외처리가 아니다. 던져주는 곳 중 가장 마지막 장소에서는 어찌됐든 try-catch 문으로 해결해 주어야 하며 이게 이루어 지지 않으면 프로그램이 종료돼 버리는 그런 문제가 발생하는 것. 그래서 예외처리에 좀 더 신중해야 하는 것 같다. 또 throws 는 클래스가 아닌 메서드의 매개변수 뒤에만 던질 수 있다. exception 가 모든 예외클래스 중 상위클래스는 맞지만 그 위에는 throwable 이 있고 같은 라인에는 error도 있다. error는 메모리 파괴와도 같은 코드로 고칠 수 없는 문제 들을 담고 있다. finally 는 예외발생과 상관없이 무조건 실행되는 문장이며 보통 공유 객체 반환을 위해 사용됨. 이는 정말 무조건 실행인데 return 이 상위에 존재하더라도 실행!!!! 이와 같을 경우 catch 문에 걸려서 return 된다면 try 문장 바깥의 print 문은 실행 안될 수 있지만, finally는 return 아래임에도 불구하고 실행된다. RunTimeException 같은 경우는 validation check로 미리 예방할 수 있다. 이게 뭐냐면 흔히 하는 nullcheck나 데이터 유효여부 체크를 말하는 것. try-catch문을 처음 봤을 때 조건문과 비슷하다는 생각이 들었는데, 실제로 비슷하게 사용할 수도 있다는 걸 알게 되었다. 자바 파일 읽어 들이기 진짜 너무 어려웠다. 기본적으로 파일을 읽고 쓰는 방식에는 stream 과 reader(writer) 방식 두가지가 있는데, 개행을 구분지어서 읽는 방식과 전체내용을 한번에 읽는 방식으로 나뉜다고 보면 된다. 용어적으로 헷갈릴 수 있는것이 위에서 언급한 stream은 메서드형식이고 자바에서 데이터를 주고 받을 때 사용되는 stre...