소프트웨어/Android/Java/Ndk
Android] Java Generic을 이용한 Custom Log
cs만두
2015. 5. 16. 23:41
https://github.com/ManSung-Kim/mantdu/blob/master/dbg_log/Dlog.java
매번 Log.d를 쓰기 귀찮아서 Dlog를 만들었다.
그런데 만들면서 매번 String으로 변환하는 작업을 하기가 귀찮아서 Generic을 이용해 Object를 상속받는(그러니깐 모든 Class)를 다 받아서 클래스 내부에서 String으로 변환을 하게 하였다.
변경 전
int testData = 0;
Log.d("mytag", testData+""); // +""을 빼먹으면 컴파일에러
변경 후
Dlog.d(testData);
package dbg_log; | |
import android.util.Log; | |
public final class Dlog { | |
private static String tag = "mstag"; | |
public void setTag(String tag) { | |
Dlog.tag = tag; | |
} | |
public static int d(String msg) { // only String class | |
return Log.d(tag, msg); | |
} | |
public static <T extends Object> int d(T msg) { // Generic | |
return Log.d(tag, msg+""); | |
} | |
} |