Browse Source

primitiveToBoxedMap 相关代码前移

James 2 years ago
parent
commit
d957921055
1 changed files with 14 additions and 14 deletions
  1. 14 14
      src/main/java/com/jfinal/template/expr/ast/MethodKit.java

+ 14 - 14
src/main/java/com/jfinal/template/expr/ast/MethodKit.java

@@ -39,6 +39,20 @@ public class MethodKit {
 	private static final Map<Class<?>, Class<?>> primitiveMap = new HashMap<Class<?>, Class<?>>(64);
 	private static final SyncWriteMap<Long, MethodInfo> methodCache = new SyncWriteMap<Long, MethodInfo>(2048, 0.25F);
 
+	private static final Map<Class<?>, Class<?>> primitiveToBoxedMap = new HashMap<Class<?>, Class<?>>(64);
+
+	// 初始化 primitive type 到 boxed type 的映射
+	static {
+		primitiveToBoxedMap.put(byte.class, Byte.class);
+		primitiveToBoxedMap.put(short.class, Short.class);
+		primitiveToBoxedMap.put(int.class, Integer.class);
+		primitiveToBoxedMap.put(long.class, Long.class);
+		primitiveToBoxedMap.put(float.class, Float.class);
+		primitiveToBoxedMap.put(double.class, Double.class);
+		primitiveToBoxedMap.put(char.class, Character.class);
+		primitiveToBoxedMap.put(boolean.class, Boolean.class);
+	}
+
 	// 初始化在模板中调用 method 时所在的被禁止使用类
 	static {
 		Class<?>[] cs = {
@@ -317,20 +331,6 @@ public class MethodKit {
 		}
 	}
 
-	private static final Map<Class<?>, Class<?>> primitiveToBoxedMap = new HashMap<Class<?>, Class<?>>(64);
-
-	// 初始化 primitive type 到 boxed type 的映射
-	static {
-		primitiveToBoxedMap.put(byte.class, Byte.class);
-		primitiveToBoxedMap.put(short.class, Short.class);
-		primitiveToBoxedMap.put(int.class, Integer.class);
-		primitiveToBoxedMap.put(long.class, Long.class);
-		primitiveToBoxedMap.put(float.class, Float.class);
-		primitiveToBoxedMap.put(double.class, Double.class);
-		primitiveToBoxedMap.put(char.class, Character.class);
-		primitiveToBoxedMap.put(boolean.class, Boolean.class);
-	}
-
 	/**
 	 * 由于从在模板中传递的基本数据类型参数只可能是 boxed 类型,当 extension method 中的方法参数是
 	 * primitive 类型时,在 getMethod(key) 时无法获取 addExtensionMethod(...) 注册的扩展方法