熟悉,精通java的来

踩踩一哥 2013-09-04 02:49:57
这是调用的类:
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);这段代码执行是什么个情况?请详细说明用到的技术及运行原理
...全文
474 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
风中的思念 2013-09-13
  • 打赏
  • 举报
回复
打酱油 。。。
小行星0906 2013-09-05
  • 打赏
  • 举报
回复
引用 楼主 qq864680621 的回复:
主函数里面: 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);
踩踩一哥 2013-09-05
  • 打赏
  • 举报
回复
引用 6 楼 longtian1213 的回复:
不是内部类的话 能用这个private static吗?
有人知道就结
踩踩一哥 2013-09-05
  • 打赏
  • 举报
回复
引用 8 楼 u011325635 的回复:
[quote=引用 楼主 qq864680621 的回复:] 主函数里面: 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);
[/quote] 其实那些类都是经过封装的,我就是想问这个是什么编程模式
暖暖猫 2013-09-05
  • 打赏
  • 举报
回复
打个酱油
跳动de指尖 2013-09-05
  • 打赏
  • 举报
回复
认识Java
ceclinux 2013-09-04
  • 打赏
  • 举报
回复
引用 4 楼 zyb134506 的回复:
这个贴不会结了
严重同意
S117 2013-09-04
  • 打赏
  • 举报
回复
不是内部类的话 能用这个private static吗?
JustSimle 2013-09-04
  • 打赏
  • 举报
回复
精通。。。。好吓人
快乐的2 2013-09-04
  • 打赏
  • 举报
回复
这个贴不会结了
踩踩一哥 2013-09-04
  • 打赏
  • 举报
回复
不管熟不熟悉,能解决问题就是精通
  • 打赏
  • 举报
回复
ExpressionGet get = new ExpressionGet(exp); 不就是构造函数初始化对象么。。。。 还要精通java的大神们出马??? 精通java,几人敢自称。。。。
末日哥 2013-09-04
  • 打赏
  • 举报
回复
不精通JAVA
代码下载地址: https://pan.quark.cn/s/581cd7c6c6b7 在信息技术行业,JavaScript(缩写为JS)主要应用于网页的前端交互功能,然而借助特定的技术手段,它同样能够完成与硬件设备例如串口通信的连接。所提及的标题“js接收串口数据,测试过完全可用的,不骗人”明确指出这是一个已经成功实现了JavaScript串口通信的案例,或许是一个规模较小的Web应用程序或网页模型,具备接收和处理串口发送的数据的能力。描述中指出,该应用程序被用于接收GPS数据,这通常关联到物联网(IoT)的应用场景,通过串口将GPS模块所采集的位置信息传递给JavaScript进行后续处理。"mscomm32.ocx"是由微软公司推出的一款ActiveX控件,其主要功能是进行串行通信,这表明这个解决方案可能基于ActiveX技术,而ActiveX控件主要在Internet Explorer浏览器中得到广泛支持。由于ActiveX控件存在安全方面的隐患以及现代浏览器对其功能的限制,使用时可能需要在用户计算机系统中进行注册表的编辑操作,以启用该控件。这一过程需要用户具备相应的操作权限,并且可能引发一定的安全风险。 在标签中,“js 接收串口数据 真正 可用的代码”进一步证实了这个资源是一个有效的JavaScript代码实现,适用于实际应用,且经过验证可以正常工作。压缩包内的"test.html"文件可能是用来演示如何运用此串口通信功能的测试性网页,用户可以通过打开这个HTML文档来观察和测试代码的执行效果。"说明文档.txt"文件则很可能包含了详细的操作步骤、使用提示或代码说明的文本资料,涵盖了如何设置环境、注册控件以及如何运用JavaScript代码与串口进行...

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧