课题打卡-请老师检查
来源:2-6 自由编程
慕神0457710
2020-09-13 01:51:42
public class Goods {
private String id;
private String name;
private float price;
private String desc;
public String getId() {
return id;
}
public void setId(String 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 getDesc() {
return desc;
}
public void setDesc(String desc) {
this.desc = desc;
}
public Goods() {
}
public Goods(String id, String name, float price, String desc) {
this.id = id;
this.name = name;
this.price = price;
this.desc = desc;
}
@Override
public String toString() {
return "Goods{" +
"id='" + id + '\'' +
", name='" + name + '\'' +
", price=" + price +
", desc='" + desc + '\'' +
'}';
}
public void display(String desc) {
setDesc(desc);
System.out.println("mooc手机更改后的商品描述更改为 "+desc);
}
}import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class Test {
public static void main(String[] args) {
try {
Class goodsClass = Class.forName("Goods");
Constructor con = goodsClass.getConstructor(new Class[]{String.class,String.class,float.class,String.class});
Goods goods = (Goods)con.newInstance(new Object[]{"001","mooc手机",3999.f,"6400高清四摄"});
System.out.println(goods);
Method display = goodsClass.getMethod("display",new Class[]{String.class});
display.invoke(goods,new Object[]{"6.58英寸大屏,超长待机,超级快充,6400万高清四摄"});
System.out.println(goods);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
}
}1回答
已完成练习,棒棒哒!继续加油!
如果我的回答解决了你的疑惑,请采纳,祝学习愉快~
相似问题