목록자바의신 (3)
개발자는 기록이 답이다
노션으로 멘토링 후기랑 TIL을 적고 있는데, 멘토링 후기는 블로그에 남겨도 좋을 것 같아서 1주차꺼부터 남겨보려고 한다. 1. F-Lab 멘토링을 시작 전 고민 2023년 퇴사 후 알고리즘 스터디도 4개월 정도 진행했었고, 자바를 어느정도 쓸 줄 안다고 생각했었다. 하지만 정말 내가 자바의 기초를 100% 이해하는가 고민을 해봤을때, 전혀 아니었다. 면접 전에 그동안 모아두었던 내용을 달달 외우면서 뻔한 대답을 하는 내 모습을 보면서 아쉬움을 느꼈었다. 한샘 2차면접에서도 CTO님께서 자바의 기초적인 부분을 다시 공부해야 한다고 말씀해주셨다. 알고 있다고 생각했던 내용도 정말 Deep하게 다시 파봐야 하고, 다른 언어말고 Java만 일단 다시 공부하라고 해주셨다. HTTP통신도 간단하게만 알고 있으면 ..
자바의 신 1권 15장 String에 대해 공부하면 아래와 같은 문장이 나온다. JDK 5이상에서는 여러분들이 String의 더하기 연산을 할 경우, 컴파일 할때 자동으로 해당 연산을 StringBuilder로 변환해준다. 따라서, 일일이 더하는 작업을 변환해 줄 필요는 없으나, for루프와 같이 반복 연산을 할 때에는 자동으로 변환을 해주지 않으므로 꼭 StringBuilder가 필요하다. 이게 무슨 말인지 한 번 소스코드를 컴파일하고 바이트코드를 확인해보자. 1. String은 불변 객체 컴파일 최적화에 대해 알아보기 전에 간단하게 String의 배경지식을 알고 있어야 한다. 자바 문서를 보면 String은 상수라서, 객체가 생성된 이후에는 값이 변하지 않는다고 써져있는 걸 볼 수있다 * String..
Exception과 Error의 차이점 Exception과 Error는 모두 자바에서 예외 처리 관련된 클래스들을 나타낸다. 그러나 두 개의 주요 차이점이 있다. 특성 Exception(예외) Error(에러) 발생 원인 주로 프로그램 외부 요인으로 발생 주로 가상머신 같은 시스템 레벨에서 발생 메인보드 고장, 디스크 고장 등 처리 여부 개발자가 명시적으로 처리 가능 주로 프로그램이 직접 처리하지 않음 예시 NullPointException, IOException OutOfMemoryError, StackOverflowError, NoClassDefFoundError 처리 방법 try-catch 블록을 사용하여 예외 처리 일반적으로 프로그램이 직접 처리하지 않음 예외 처리 가능 여부 일반적으로 예외 처리..