老师请检查

来源:2-6 自由编程

慕工程8205364

2021-06-03 13:49:23

package com.imooc.reflect.zy;

import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;

public class ReflectSample {
public static void main(String[] args) {
try {
Class goodsClass = Class.forName("com.imooc.reflect.zy.Goods");
           Constructor constructor = goodsClass.getConstructor(new Class[]{
Integer.class, String.class, Float.class, String.class
           });
           Goods goods = (Goods) constructor.newInstance(new Object[]{
001, "mooc手机", 3999.0f, "6.58英寸大屏,超长待机"
           });
           System.out.println(goods);
           Method xgDesp = goodsClass.getMethod("xgDesp", String.class);
           xgDesp.invoke(goods, new Object[]{
"6.58英寸大屏,超长待机,超级快船,6300万高清像素"
           });
           System.out.println(goods);
       } catch (ClassNotFoundException e) {
e.printStackTrace();
       } catch (NoSuchMethodException e) {
e.printStackTrace();
       } catch (InvocationTargetException e) {
e.printStackTrace();
       } catch (InstantiationException e) {
e.printStackTrace();
       } catch (IllegalAccessException e) {
e.printStackTrace();
       }

}
}



package com.imooc.reflect.zy;

public class Goods {
private Integer id;
   private String name;
   private Float price;
   private String desp;

   public Goods() {

}

public Goods(Integer id, String name, Float price, String desp) {
this.id = id;
       this.name = name;
       this.price = price;
       this.desp = desp;
   }

public Integer getId() {
return id;
   }

public void setId(Integer id) {
this.id = id;
   }

public String getName() {
return name;
   }

public void setName(String name) {
this.name = name;
   }

public Float getPrice() {
return price;
   }

public void setPrice(Float price) {
this.price = price;
   }

public String getDesp() {
return desp;
   }

public void setDesp(String desp) {
this.desp = desp;
   }

@Override
   public String toString() {
return "Goods{" +
"id=" + id +
", name='" + name + '\'' +
", price=" + price +
", desp='" + desp + '\'' +
'}';
   }
public void xgDesp(String desp) {
this.desp = desp;
       System.out.println(name + "手机更改后的商品描述为:" + this.desp);
   }
}


写回答

1回答

好帮手慕小尤

2021-06-03

已完成练习,棒棒哒!继续加油!

祝学习愉快!

0

0 学习 · 16556 问题

查看课程