- 26
- 0
- 约1.99万字
- 约 66页
- 2017-05-28 发布于上海
- 举报
JDK新特性1ppt课件
MethodHandle的bindTo方法只是绑定方法句柄的第一个参数,并不要求这个参数一定表示方法调用的接收者。 对于一个MethodHandle,可以多次使用bindTo方法来为其中的多个参数绑定值。 package com.methodhandle; import java.lang.invoke.MethodHandle; import java.lang.invoke.MethodHandles; import java.lang.invoke.MethodType; public class ParameterBind2 { public void multipleBindTo() throws Throwable { MethodHandles.Lookup lookup = MethodHandles.lookup(); MethodHandle mh = lookup.findVirtual(String.class, indexOf, MethodType.methodType(int.class,String.class,int.class)); mh = mh.bindTo(Hello).bindTo(l); System.out.println(mh.invoke(2)); } * * * * * * * * * * * * * * package com.li; public interface Greet { public String getGreeting(String name); } * * * * * * * * * * * * * * public void attributeInBindings() throws ScriptException { ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine engine = manager.getEngineByName(JavaScript); ScriptContext context = engine.getContext(); context.setAttribute(name, Ajax, ScriptContext.GLOBAL_SCOPE); engine.eval(println(name);); } 不直接操作语言绑定对象本身,而是通过ScriptContext的setAttribute来向语言绑定对象中添加数据。所添加的数据在脚本执行时也同样是可见的。代码如下: 脚本语言一般是解释执行的。脚本引擎在运行时需要先解释脚本之后再执行。 一般来说,通过解释执行的方式来运行脚本比编译后再运行速度慢些。 对脚本进行编译,再执行,会提高执行效率。不是所有脚本执行引擎都支持对脚本进行编译。如果脚本引擎支持这一特性,它会实现javax.script.Compilable接口来声明这一点。 public CompiledScript compile(String scriptText) throws ScriptException { ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine engine = manager.getEngineByName(JavaScript); if (engine instanceof Compilable) { CompiledScript script = ((Compilable) engine).compile(scriptText); return script; } return null; } public void run(String scriptText) throws ScriptException { CompiledScript script = compile(scriptText); if (script == null) { return; } for (int i = 0; i 100000; i++) { script.eval(); } } 有些脚本引擎允许使用者单独调用脚本中的某个方法。支持这种方法调用方式的脚本引擎可以实现javax.script.Invocable接口。 通过Invocable接口可以调用脚本中的顶级方法,也可以调用对象中的成员方法。如果脚本中的顶层方法或对象中的成员方法实现了java中的接口,可以通过Invocable接口中的方法来获取脚本中的相应的java接口的实现对象。这样就可以在java语言中定义接口,在脚本中实现接口。程序中使用该接口的其他部分并不知道接口是
您可能关注的文档
- EXCEL培训教材完整版.ppt
- FZLYDとFZL生管购买业务改善レポート(最终版).ppt
- Gaussian3教程PPT版本.ppt
- Forecast23中国电子商务蓝皮书DCCI简版.pptx
- GCMS基础理论.ppt
- FLUENT培训教材后处理.ppt
- GBT2室温拉伸.ppt
- GCMS联用仪理论与操作课件.ppt
- GCMS维护知识.ppt
- GCMS联用技术.ppt
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 05G359-3悬挂运输设备轨道标准图集.pdf VIP
- 新学期教师培训会,校长发言:明边界守初心,知尺度有温度,让教育履职既合规又暖心.doc VIP
- 湖南省长沙市第一中学2024-2025学年高二上学期语文1月期末考试试卷(含答案).pdf VIP
- 2025年秋季学期学校全面工作计划.doc VIP
- T∕CHAS 10-2-22-2023 中国医院质量安全管理 第2-22部分:患者服务 疼痛治疗.pdf
- T_CNFMA B036-2024 户外林业机械 以锂离子电池为动力源的步进式松土机.pdf VIP
- T_CCTAS 237-2025 城市轨道交通市域快线车辆运营技术规范.pdf VIP
- 广告策划与创意(第2版):网络广告创意PPT教学课件.pptx
- 人体解剖学试题及答案.docx VIP
- 最后倒计时最后倒数(The Final Countdown) 高清钢琴谱五线谱.doc VIP
原创力文档

文档评论(0)