zoukankan      html  css  js  c++  java
  • java类的静态属性值获取

    获取某个类实例的静态属性:

    public class ErrorCode {
    
        private String code;
        private String message;
    
        private ErrorCode(String code, String message) {
            this.code = code;
            this.message = message;
        }
    
        public String getCode() {
            return code;
        }
    
        public String getMessage() {
            return message;
        }
    
        public static final ErrorCode 交易成功 = new ErrorCode("00000", "交易成功");
        public static final ErrorCode 交易失败 = new ErrorCode("00001", "交易失败");
    }

    遍历获取其静态属性的code和message:

    public static void main(String[] args) throws Exception {
            Class<?> ownerClass = Class.forName("com.kayak.frame.ErrorCode");
            Field[] fields = ErrorCode.class.getDeclaredFields();
            for (Field field : fields) {
                int mod = field.getModifiers();
                if (Modifier.isStatic(mod) || Modifier.isFinal(mod)) {
                    Object o = field.get(ownerClass);
                    ErrorCode e = (ErrorCode) o;
                    System.out.println(e.getCode() + " " + e.getMessage());
                }
            }
        }

    打印结果:

    00000 交易成功
    00001 交易失败

    如果获取指定的静态属性:

    /**
     * 得到某个类的静态属性 java反射机制
     * 
     * @param className
     * @param fieldName
     * @return
     * @throws Exception
     */
    public Object getStaticProperty(String className, String fieldName)
            throws Exception {
        Class ownerClass = Class.forName(className);
    
        Field field = ownerClass.getField(fieldName);
    
        Object property = field.get(ownerClass);
    
        return property;
    }
  • 相关阅读:
    根据坐标点画图形
    js 解析geojson格式
    devexpress 安装
    DataTable 获取列名
    ADO.NET 注册
    css:outline
    javascript函数sort
    引用类型-2015/10/06
    2015-11-02-js
    jquery
  • 原文地址:https://www.cnblogs.com/Anidot/p/7211914.html
Copyright © 2011-2022 走看看