본문 바로가기
[Java] Reflection Tutorial - Generics Java, Reflection Tutorial - Generics 일반적으로 Generics 정보는 runtime 에 사라진다고 알고 있지만 꼭 그렇지만은 않다. The Generics Reflection Rule of Thumb 일반적으로 List 와 같은 녀석들은 어떤 Generic 이 쓰였는지 알기 어렵다.하지만 parameterized 된 method 나 field 를 조사해보면,어떤 generic 이 사용되었는지 알 수 있다. Generic Method Return Types Method method = TestClass.class.getMethod( "getStringList", null );Type returnType = method.getGenericReturnType(); if ( ret.. 2013. 12. 27.
[Java] Reflection Tutorial - Annotations. [Java] Reflection Tutorial - Annotations. What are Java Annotations Java5 에 소개된 기능으로, meta data 를 코드형태로 담을 수 있고, runtime 에 이 meta data 에 접근할 수 있다. pre-compiler 가 코드를 conversion 할 때 사용되기도 한다. Annotation 은 interface 형태이다. @Retention( RetentionPolicy.RUNTIME );@Target( ElementType.TYPE )public @interface TestAnnotation{public String name();public String value();} @TestAnnotation(name="variable", va.. 2013. 12. 23.
[Java] Reflection Tutorial - Accessing Private Field, Private Method Java, Reflection Tutorial - Accessing Private Field, Private Method Reflection 으로 private field, method 들에도 접근할 수 있다.private 에 대한 접근은 unit test 에서 유용하게 쓰인다. VM 에 따라서 권한이 주어져야 접근 가능한 경우도 있다. Accessing Private Fields TestClass testClass = new TestClass();Field privateField = testClass.getDeclaredField( String name );privateField.setAccessible( true );privateField.get( testClass ); setAccessible 을 .. 2013. 12. 17.
[java]DatagramSocket bind() connect() difference java, DatagramSocket bind() connect() difference DatagramSocket 의 bind() 와 connect() 의 차이 DatagramSocket ( UDP ) 에는 bind() 와 connect() 라는 두개의 함수가 있는데 두개 함수의 구분이 확실하지 않아 알아보았다. bind() 는 socket 에 port 를 연결하는 것. bind 를 한 process 에서 release 를 하기 전까지 이 port 는 다른 process 에서 쓸 수 없다. connect() 는 socket 에게 connect 를 하도록 하는 것이다. TCP/IP 가 아닌 UDP( datagram ) 의 경우는 사실 connect 가 꼭 필요한 것은 아니다. DatagramSocket 을.. 2013. 12. 10.
[Java] Reflection Tutorial - Getter and Setter Java, Reflection Tutorial - Getter and Setter Getter 와 Setter 의 경우 일일히 getter setter method 를 얻어와야 한다. Setter 의 경우에 return value 가 있을 수도 있다는 것을 알아야 한다. 100% 정확한 방법은 아니지만 general 한 방법의 (POJO) getter, setter 는 아래와 같은 방법으로 조회할 수 있다. public static boolean isGetter(Method method){ if(!method.getName().startsWith("get")) return false; if(method.getParameterTypes().length != 0) return false; if(void.cl.. 2013. 12. 4.
[android] NavigationDrawer Tutorial android, NavigationDrawer Tutorial Layout You should use DrawerLayout to enable your app edge activated for open drawer automatically.Otherwise you have to implement drawer open touch event by yourself. You must keep in mind that FrameLayout that is responsible for drawer has to be come last.Because android draws xml declared layout from the bottom so that the drawer will be come most upper part.. 2013. 11. 28.
[Java] Reflection Tutorial - Class [Java] Reflection Tutorial - Class Java Reflection 은 class, interface, field, 그리고 method 를 runtime 에 조사할 수 있도록 해준다. 새로운 object 를 만들 수도 있고, method 를 호출할 수도 있다. script language 가 runtime 에 java 의 함수를 호출한다거나, database table 과 object 를 맞출 때 자주 사용한다. Class Class 로 부터 얻을 수 있는 정보들. Class NameClass Modifier ( public, private, synchronized... )Pakcage InfoSuper classImplemented InterfacesConstructorsMeth.. 2013. 11. 12.
[java] full 한글 판별 코드 Java, Full 한글 판별 코드 Full 한글이라 하면, ㅈ ㅇ ㅏ ㅗ 와 같은 완성되지 않은 한글이 아닌,감. 자. 가. 갈 등과 같이 조합이 완성한 한글을 이야기한다.이는 character 당 ascii code 로 판별이 가능하다. return ch >= 0xAC00 && ch 2013. 10. 21.
[Java] JDBC, Database 연결하여 사용하기 자바, JDBC, Database 연결하여 사용하기 JDBC 를 이용하여 Database 를 연결하여 사용하는 방법을 알아본다. Statement Database Query 는 Statement 객체를 이용하는데, 이 객체는 DBConnection 을 통해서 얻을 수 있다. Statement stmt = con.createStatement(); Statement 에는 다음의 2개의 대표함수가 있다. int executeUpdate( String sql ); // db 조작에 관한 어떤 명령을 수행한다. ResultSet executeQuery( String sql ) // db query 에 사용된다. ResultSet ResultSet 은 안드로이드의 Cursor 와 같은 녀석이라고 보면 된다.Resu.. 2013. 10. 11.
반응형