黑马程序员技术交流社区

标题: JavaBean-反射 [打印本页]

作者: zl78365336    时间: 2013-12-7 23:49
标题: JavaBean-反射
本帖最后由 zl78365336 于 2013-12-8 10:45 编辑

用反射技术对name复制,代码要怎么改啊



  1. public class Tes {
  2.         public static void main(String[] args){
  3.                 Person per = Person.class.newInstance();
  4.                 per.setName("zz");
  5.                 System.out.println(per.getName());
  6.                
  7.         }
  8. }

  9. //实现标记接口
  10. class Person implements Serializable {
  11.         //对象序列化
  12.         static final long serialVersionUID = 42L;

  13.         private String name;
  14.         private int age;
  15.         
  16.         public void getName(String name){
  17.                 this.name = name;
  18.         }
  19.         public String setName(){
  20.                 return name;
  21.         }
  22.         
  23.         public void getAge(int age){
  24.                 this.age = age;
  25.         }
  26.         public int setAge(){
  27.                 return age;
  28.         }
  29.         
  30.         public Person(){
  31.                 super();
  32.         }
  33.         
  34.         public Person(String name,int age){
  35.                 super();
  36.                 this.name = name;
  37.                 this.age = age;
  38.         }
  39.         //覆盖toString()方法
  40.         @Override
  41.         public String toString(){
  42.                 return "name: "+this.name+"; age: "+this.age;
  43.         }
  44. }


复制代码


作者: Weix1992    时间: 2013-12-8 00:23
  1. Method setMethod = Person.class.getMethod("setName", String.class);
  2.                 Person person = Person.class.newInstance();
  3.                 setMethod.invoke(person, "wangwu");
  4.                
  5.                 System.out.println(person.getName());
复制代码


提醒你一下 你Person中的getName 和 setName都写错了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2