Java 5

java, 변수 초기화 영역(= Initialization Block)

초기화 코드를 넣는 Initialization Blocks Static Initialization Block 자바 코드들을 읽다 보면 다음과 같은 코드가 쉽게 눈에 띈다 class Whatever { public static final int myInt; static { myInt = 4444; } } 바로 static 초기화 블럭이다 클래스가 생성되는 시점에 초기화 되는 코드 그런데, 오늘 신기한 녀석을 StaticOverflow - Is there a best practice for writing maps literal style in Java?에서 발견했다. Instance Initialization Block Map map = new HashMap() { { put("foo", "bar"); pu..

learning 2012.04.30

Eclipse 프로젝트에서 Beanshell 띄우기(Use Beanshell on Eclipse Project.)

Beanshell on eclipse Beanshell 이란 스크립트 언어가 있는 건 알고 있었습니다. 이 녀석의 자르(bsh-core-2.0b4.jar) 를 Eclipse의 클래스 패스에 넣어 놓으면 현재 프로젝트와 동일한 클래스 패스 상태로 Java를 스크립팅(Scripting) 할 수 있다는 것도 알고 있었습니다. 하! 지! 만! 직접 해보니, 이거 엄청 멋찐 녀석이더군요! 캡춰한 그림을 약간 설명하자면, 이클립스 코드를 보면 App이란 클래스가 있는데, 그 안에 say라는 에코(echo)역할을 하는 메소드가 있습니다. 빌드하고 beanshell을 실행합니다. 그리고 그 안에서 해당 메소드를 호출하게 만들자. 이클립스 콘솔에서 결과값이 나타나는 장면입니다. 결과가 콘솔이 아닌 Beanshell에 직..

learning 2009.11.25

System properties and Environments on JAVA

이번엔 Properties에 관한 이야기. 여기 저기 수 많은 프로그램에서 사용하고 있는 "Properties"에 관해서 아는게 별로 없는 것 같아서 잠깐 살펴보기로 했다.(사실 쓰면서 찾아보고 있는 중이다..) Java 어플리케이션은 java.version, java.home, os.name 그리고, user.home 과 같은 System properties를 제공해 준다. 이 값들은 "java.lang.System"클래스의 다음 두 메소드로 값을 읽을 수 있다. public static String getProperty(String key) public static String getProperty(String key, String def) 첫번째 메소드는 key값에 해당하는 System proper..

learning 2009.08.12