본문 바로가기

전체 글

(19)
[generic] raw type 사용을 지양하자 Hello, Generic 제네릭이 나오기 이전까지는 컬렉션에서 객체를 꺼낼 때마다 객체 타입을 지정하도록 형변환을 해주어야 했다 형변환의 오류는 런타임 시점에서 오류를 발견할 수 있었다 제네릭을 사용하면 위와 같은 문제를 컴파일 시점에서 확인할 수 있기 떄문에 더 안전하고 명확한 프로그램을 만들어준다 제네릭이란 ? 제네릭 클래스, 제네릭 인터페이스: 클래스와 인터페이스 선언에 타입 매개변수가 쓰이는 경우를 말한다 ex) public interface Set extends Collection 우리는 제네릭 클래스와 제네릭 인터페이스를 통틀어 제네릭 타입(generic type) 이라고 부른다 제네릭 타입은 매개변수화 타입(Parameterized type)을 정의한다 ex) List : List 클래스의..
Spring Scheduler Spring task Scheduling ThreadPoolTaskScheduler ScheduledExecutorService에 작업을 위임하고 TaskExecutor 인터페이스를 구현한다 내부 스레드 관리에 적합하다 단일 인스턴스가 @Scheduled 비동기 스케쥴링을 처리할 수 있다 Thread 명에 ThreadPoolTaskScheduler 접두어가 붙는다 public class ThreadPoolTaskSchedulerConfig { @Bean public ThreadPoolTaskScheduler threadPoolTaskScheduler(){ ThreadPoolTaskScheduler threadPoolTaskScheduler = new ThreadPoolTaskScheduler(); thr..
HashMap vs HashSet in Java 코딩테스트를 연습하는 도중 hash를 사용하는 문제를 풀다 HashMap이 더 성능이 좋다는 것을 배우게 되어 내용을 정리해보려고 한다. HashSet이란? Set 인터페이스를 구현하고, 중복 개체를 가지지 않는 컬렉션 프레임워크이다. equals(), hashCode() 를 재정의해야 중복 여부를 체크할 수 있다. Thread Safe 하지 못하고 동기화하지 않는다.public boolean add(Object obj) 고유한 값이 추가될 경우 true를 반환하고, 중복된 값을 추가할 경우 false를 반환한다. HashMap이란? Map 인터페이스를 구현하고, 키를 값에 매핑하는 해시 테이블이다. 중복 키를 허용하지 않지만 중복 값을 허용한다 Thread Safe하지 못하고 동기화하지 않는다. 중복값..