[构建自己的持久层]三、反射机制

假设有一个类
class A
{
  private String name;
  public A()
  {
    super();
  }
  public String getName()
  {
    return this.name;
  }
  public void setName(String name)
  {
    this.name=name;
  }
}
给我们一个实例 A a=new A();a.setName("我是一个兵");

让我们把a写到数据库,我们可以这样做
String name=a.getName();
....."insert into A (name) values (?)  ...parameters new Object[]{name}
我们可以以硬编码的方式取出a.name
但是持久层就不可以了,持久层不可能提前写好这样的硬编码,也不可能预知。怎么办?这种情况下,我们引入java的反射机制
Class cls=a.getClass();
Method method=cls.getMethod("getName",new Class[]{});
System.out.println(method.invoke(a,null));
通过这种方式,我们也取得了a.name
好了,持久层为什么引入反射机制我们就说这些,更多反射资料请参考JDK文档

你可能感兴趣的:(jdk)