当前位置: 首页>>代码示例>>Java>>正文


Java Method.getDefaultValue方法代码示例

本文整理汇总了Java中java.lang.reflect.Method.getDefaultValue方法的典型用法代码示例。如果您正苦于以下问题:Java Method.getDefaultValue方法的具体用法?Java Method.getDefaultValue怎么用?Java Method.getDefaultValue使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在java.lang.reflect.Method的用法示例。


在下文中一共展示了Method.getDefaultValue方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: setDefaults

import java.lang.reflect.Method; //导入方法依赖的package包/类
private static void setDefaults(HashMap map, Class annotationClass)
{
    for (Method m : annotationClass.getDeclaredMethods())
    {
        Object defaultValue = m.getDefaultValue();
        // TODO throw exception if default is missing for method that doesn't yet have a value
        if (defaultValue != null && !map.containsKey(m.getName()))
        {
            map.put(m.getName(), defaultValue);
        }
    }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:13,代码来源:AnnotationAttributeBase.java

示例2: isAllDefaultMethods

import java.lang.reflect.Method; //导入方法依赖的package包/类
public static boolean isAllDefaultMethods(Class<? extends Annotation> annotationType) {
  boolean hasMethods = false;
  for (Method m : annotationType.getDeclaredMethods()) {
    hasMethods = true;
    if (m.getDefaultValue() == null) {
      return false;
    }
  }
  return hasMethods;
}
 
开发者ID:maetrive,项目名称:businessworks,代码行数:11,代码来源:Annotations.java

示例3: invoke

import java.lang.reflect.Method; //导入方法依赖的package包/类
@SuppressWarnings("unchecked")
    public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {

    if(method.getDeclaringClass()==JAnnotationWriter.class) {
        try {
            return method.invoke(this,args);
        } catch (InvocationTargetException e) {
            throw e.getTargetException();
        }
    }

    String name = method.getName();
    Object arg=null;
    if(args!=null && args.length>0)
        arg = args[0];

    // check how it's defined on the annotation
    Method m = annotation.getDeclaredMethod(name);
    Class<?> rt = m.getReturnType();

    // array value
    if(rt.isArray()) {
        return addArrayValue(proxy,name,rt.getComponentType(),method.getReturnType(),arg);
    }

    // sub annotation
    if(Annotation.class.isAssignableFrom(rt)) {
        Class<? extends Annotation> r = (Class<? extends Annotation>)rt;
        return new TypedAnnotationWriter(
            r,method.getReturnType(),use.annotationParam(name,r)).createProxy();
    }

    // scalar value

    if(arg instanceof JType) {
        JType targ = (JType) arg;
        checkType(Class.class,rt);
        if(m.getDefaultValue()!=null) {
            // check the default
            if(targ.equals(targ.owner().ref((Class)m.getDefaultValue())))
                return proxy;   // defaulted
        }
        use.param(name,targ);
        return proxy;
    }

    // other Java built-in types
    checkType(arg.getClass(),rt);
    if(m.getDefaultValue()!=null && m.getDefaultValue().equals(arg))
        // defaulted. no need to write out.
        return proxy;

    if(arg instanceof String) {
        use.param(name,(String)arg);
        return proxy;
    }
    if(arg instanceof Boolean) {
        use.param(name,(Boolean)arg);
        return proxy;
    }
    if(arg instanceof Integer) {
        use.param(name,(Integer)arg);
        return proxy;
    }
    if(arg instanceof Class) {
        use.param(name,(Class)arg);
        return proxy;
    }
    if(arg instanceof Enum) {
        use.param(name,(Enum)arg);
        return proxy;
    }

    throw new IllegalArgumentException("Unable to handle this method call "+method.toString());
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:76,代码来源:TypedAnnotationWriter.java

示例4: getDefaultSizeOfRandom

import java.lang.reflect.Method; //导入方法依赖的package包/类
public static int getDefaultSizeOfRandom() throws Exception {
  Class<?> clazz = Random.class;
  Method method = clazz.getDeclaredMethod("size");
  return (Integer) method.getDefaultValue();
}
 
开发者ID:glytching,项目名称:junit-extensions,代码行数:6,代码来源:AssertionUtil.java


注:本文中的java.lang.reflect.Method.getDefaultValue方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。