Custom Annotation 코드를 작성하다보면 아래 처럼 필드값에 Validation을 적용하고 싶은 경우가 있다. @Validation(min = -90, max ...
Blocking vs NonBlocking Blocking/NonBlocking은 호출되는 함수가 바로 리턴하느냐 마느냐가 핵심이다. 호출된 함수가 바로 리턴해서 호...
ThreadLocal java.lang 패키지에서 제공하는 쓰레드 범위 변수 즉,쓰레드 수준의 데이터 저장소. 같은 쓰레드 내에서만 공유 따...
Callback을 통해 비동기를 구현해보자 Callback 피호출자(Caller)가 호출자(Callee)를 다시 호출하는 것 비동기(Asynchronous)적 처리를 하...
인터페이스 vs 추상클래스 추상클래스 추상클래스는 추상메소드를 포함할 수 도 있고 안할 수 도 있다. 인스턴스화할 수 없다. ...
객체지향 설계란 무엇일까? 협력 : 객체들이 애플리케이션 기능을 구현하기위해 수행하는 상호작용을 협력이라고 한다. 책임 : 객체가 협력에 참여하기 ...
Java jvm jvm은 java와 os사이에서 중개자 역할을 하며 java가 os에 구애받지 않고 재사용을 가능하게 해준다. 그리고 메모리관리, GC를 수행한다. 그리고 ...
Java Garbage Collection 가비지 컬렉션 과정 GC를 알아보기전 ‘stop the world’라는 용어를 알아야한다 ‘stop the world’란 ...
SOLID 원칙 객체지향 설계에서 지켜야할 5가지 원칙 1. SRP(Single Responsilbility Principle) 단일 책임 원칙 객체는 단 하나...
비동기처리 비동기 처리란? 비동기 처리란 어떤 작업을 실행하는 동안에 해당 처리가 끝나기를 기다리지 않고 다른작업을 시작할 수 있는 것을 말한다. 자바에서 비동기 처리...