Java可以做这样的事情吗?
String methodName = "multiply";
MyMath myMath = new MyMath();
/* "methodName" is expanded before being called */
int answer = myMath.methodName(2, 3);
System.out.println(answer);
6
这种类型的特性/概念在编程语言中是否称为“动态扩展”、“变量插值”、eval() (例如,在各种脚本语言中)、反射、自省、Java bean?
在.NET中,应用程序可以将C#代码作为字符串保存在文本文件或数据库中,并动态运行。这种方法在许多情况下都很有用,例如业务规则引擎或用户定义的计算引擎等等。下面是一个很好的例子:
using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.CSharp;
using System.CodeDom.Compiler;
class Program
{
static void Main(string[] args)
{
var csc = new CSharpC