java의 몇가지 이야기

오늘은 뭘 할려고 하는건 아니고 자바와 관련해서 몇가지 이야기를 해보려고 한다. 많이 중요한 내용은 아니지만(물론 알면 좋지만) 다시 처음으로 돌아가는 의미로 하는 것이다. 맨날 쉽지 않은(?) 이야기만 하다보니 처음으로 돌아가자는 의미로 몇가지 살펴보도록 하자. Integer 오토박싱 int를 오토박싱 할 때 자바 컴파일러는 내부적으로 Integer.valueOf() 메서드를 호출한다. public static void main(String[] args) { Integer i = 10; } 이 경우 자바 컴파일러는 Integer.valueOf() 메서드를 호출해서 오토박싱을 한다. 정말로 그렇게 되는지 바이트코드를.. Read More

Super type token

오늘은 Super type token에 대해서 알아보자. Super type token을 알기전에 일단 type token을 알아야 되는데 type token 이란 간단히 말해서 타입을 나타내는 토큰(?)이다. 예를들어 String.class는 클래스 리터럴이라하며 Class<String>가 타입토큰이라 말할 수 있다. 실제 Class은 String.class를 이용해서 메서드를 호출 할 수 있다. Super type token 경우에는 제네릭과 관련이 많다. 일단 제네릭을 잘 모른다면 여기를 한번 보고 이글을 봐야 할 듯 하다. Type token 타입 토큰의 간단한 예제를 만들어서 살펴보자. public static.. Read More

java의 Date

오늘도 어김없이 java와 관련된 이야기를 포스팅 하려한다. 요 근래 자주 java와 관련있는 포스팅만 하는 것 같다. 다른 것들도 해야 되는데.. 아무튼 오늘은 java의 날짜와 관련된 포스팅을 한다. java의 날짜 관련API(Date, Calendar 기타 등) 설계부터가 잘못 되었고 구현조차 잘못된 클래스로 java의 가장 악명 높은 대표적인 클래스이다. 기존의 날짜 관련 API들은 문서없이 사용하기 쉽지 않고 일관성도 없는데다 알 수 없는 상수들을 남발한다. 한개씩 살펴보자. 이상한 월 상수 @Test public void constantTest() {.. Read More