我正在研究用Java实现的模式,并且有一些关于它如何与C#对齐(可以移植到)的问题.
Java的:
class Foo { private Class someClass; ... } class Bar { private Field some Field; }
首先,Class存储域对象的实例.看起来Java在类型上公开了反射方法,用于通过反射访问对象上的字段.什么类型将成为C#的同义词?我会使用对象然后使用MethodInfo还是有更好的方法?
其次,Field是框架中的类型,使用以下方式分配:
someClass.getDeclaredField(fieldName)
我应该使用.NET框架中的并行吗?
现在我创建了一个自定义对象来代替Foo中的Class,我为Field创建了一个自定义对象.有没有一种首选的方法呢?
您可以查看FieldInfo类型和GetField方法.
代码可能看起来像行之一:
class Foo { public Type someClass; ... } class Bar { private FieldInfo some_Field; public Assign(string fieldName) { Foo foo = new Foo(); some_Field = foo.someClass.GetField(fieldName); } }