首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

相熟,精通java的来

2013-09-07 
熟悉,精通java的来 这是调用的类:private static class ExpressionGet implements Get{private FactExpres

熟悉,精通java的来
 这是调用的类:
private static class ExpressionGet implements Get
    {
        private FactExpression expression;
        public ExpressionGet(FactExpression expression)
        {
            this.expression = expression;
        }

        @Override
        public Object getValue(FLOW_LOG flowLog)
        {
            MethodGet getVal = new MethodGet(flowLog);
            Object obj = expression.eval(getVal);
            return obj;
        }

        @Override
        public int getIntValue(FLOW_LOG flowLog)
        {
            Object val = getValue(flowLog);
            if (val == null)
            {
                return 0;
            }
            if (val instanceof Number)
            {
                return ((Number)val).intValue();
            }
            else
            {
                return Integer.parseInt(val.toString());
            }
        }

        @Override
        public long getLongValue(FLOW_LOG flowLog)
        {


            Object val = getValue(flowLog);
            if (val == null)
            {
                return 0;
            }
            if (val instanceof Number)
            {
                return ((Number)val).longValue();
            }
            else
            {
                return Long.parseLong(val.toString());
            }
        }

        @Override
        public double getDoubleValue(FLOW_LOG flowLog)
        {
            Object val = getValue(flowLog);
            if (val == null)
            {
                return 0;
            }
            if (val instanceof Number)
            {
                return ((Number)val).doubleValue();
            }
            else
            {
                return Double.parseDouble(val.toString());
            }
        }

        @Override


        public String getTextValue(FLOW_LOG flowLog)
        {
            Object val = getValue(flowLog);
            if (val == null)
            {
                return null;
            }
            else
            {
                return val.toString();
            }
        }
        
        
        
    }
这是继承的父类:
public static interface Get
    {
        public Object getValue(FLOW_LOG flowLog);
        public int getIntValue(FLOW_LOG flowLog);
        public long getLongValue(FLOW_LOG flowLog);
        public double getDoubleValue(FLOW_LOG flowLog);
        public String getTextValue(FLOW_LOG flowLog);
    }
主函数里面:
           FactExpressionBuilder b = new FactExpressionBuilder(entityId,eventId, e.getValue(), extImports);
           FactExpression exp = b.getFactExp();
           ExpressionGet get = new ExpressionGet(exp);
请问ExpressionGet get = new ExpressionGet(exp);这段代码执行是什么个情况?请详细说明用到的技术及运行原理 java
------解决方案--------------------


ExpressionGet get = new ExpressionGet(exp);
不就是构造函数初始化对象么。。。。
还要精通java的大神们出马???

精通java,几人敢自称。。。。
[解决办法]

引用:
主函数里面:
           FactExpressionBuilder b = new FactExpressionBuilder(entityId,eventId, e.getValue(), extImports);
           FactExpression exp = b.getFactExp();
           ExpressionGet get = new ExpressionGet(exp);
请问ExpressionGet get = new ExpressionGet(exp);这段代码执行是什么个情况?请详细说明用到的技术及运行原理


前面的俩类,实在是自己水平有限看了下,用到了其它几个类内容不详,无法回答

但是看你问的这点,看命名似乎是个工厂方法


//取得工厂
//。。。这里我觉得应该还有句获得工厂

//获得具体工厂
 FactExpressionBuilder b = new FactExpressionBuilder(entityId,eventId, e.getValue(), extImports);
 
 //获得实例
     FactExpression exp = b.getFactExp();
     
     //用了个装饰模式,具体干什么不知道,看内容吧
     ExpressionGet get = new ExpressionGet(exp);

热点排行
Bad Request.