public class SharedEnumObject extends LinkedHashMap<String,Object>
添加枚举类型,便于在模板中使用
例子: 1:定义枚举类型
AbstractMap.SimpleEntry<K,V>, AbstractMap.SimpleImmutableEntry<K,V>| 限定符和类型 | 字段和说明 |
|---|---|
private Class<? extends Enum<?>> |
enumClass |
private Map<Long,Method> |
staticMethods |
| 构造器和说明 |
|---|
SharedEnumObject() |
| 限定符和类型 | 方法和说明 |
|---|---|
static SharedEnumObject |
create(Class<? extends Enum<?>> enumClass) |
private static javassist.CtClass[] |
createParameterClassArray(Method originalMethod,
javassist.ClassPool pool) |
private Object |
doInvokeEnumMethod(String methodName,
Object... paras) |
private static Map<Long,Method> |
findEnumStaticMethods(Class<? extends Enum<?>> enumClass) |
private Method |
findMethod(String methodName,
Object... args) |
private static Long |
getMethodKey(Class<?> targetClass,
String methodName,
Class<?>[] argTypes) |
(专用程序包) void |
init(Class<? extends Enum<?>> enumClass,
Map<Long,Method> staticMethods) |
Object |
invoke(String method,
Object... paras) |
protected Object |
invokeEnumMethod(String methodName) |
protected Object |
invokeEnumMethod(String methodName,
Object para1) |
protected Object |
invokeEnumMethod(String methodName,
Object para1,
Object para2) |
protected Object |
invokeEnumMethod(String methodName,
Object para1,
Object para2,
Object para3) |
protected Object |
invokeEnumMethod(String methodName,
Object para1,
Object para2,
Object para3,
Object para4) |
protected Object |
invokeEnumMethod(String methodName,
Object para1,
Object para2,
Object para3,
Object para4,
Object para5) |
private boolean |
isMatchParas(Class<?>[] parameterTypes,
Object[] args) |
clear, containsValue, entrySet, forEach, get, getOrDefault, keySet, removeEldestEntry, replaceAll, valuesclone, compute, computeIfAbsent, computeIfPresent, containsKey, isEmpty, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, sizeequals, hashCode, toStringcompute, computeIfAbsent, computeIfPresent, containsKey, equals, hashCode, isEmpty, merge, put, putAll, putIfAbsent, remove, remove, replace, replace, sizeprivate Map<Long,Method> staticMethods
public SharedEnumObject()
protected Object invokeEnumMethod(String methodName)
protected Object invokeEnumMethod(String methodName, Object para1)
protected Object invokeEnumMethod(String methodName, Object para1, Object para2)
protected Object invokeEnumMethod(String methodName, Object para1, Object para2, Object para3)
protected Object invokeEnumMethod(String methodName, Object para1, Object para2, Object para3, Object para4)
protected Object invokeEnumMethod(String methodName, Object para1, Object para2, Object para3, Object para4, Object para5)
private Object doInvokeEnumMethod(String methodName, Object... paras)
public static SharedEnumObject create(Class<? extends Enum<?>> enumClass)
private static javassist.CtClass[] createParameterClassArray(Method originalMethod, javassist.ClassPool pool) throws javassist.NotFoundException
javassist.NotFoundExceptionprivate static Map<Long,Method> findEnumStaticMethods(Class<? extends Enum<?>> enumClass)
private Method findMethod(String methodName, Object... args)
private boolean isMatchParas(Class<?>[] parameterTypes, Object[] args)
private static Long getMethodKey(Class<?> targetClass, String methodName, Class<?>[] argTypes)
Copyright © 2024. All rights reserved.