Java反射类3-4自由编程

Java反射类3-4自由编程

这是Goods商品类:

package com.winking.fanshe;

public class Goods {

public Goods() {
		super();
	}
public Goods(int num, String name, int price, String desp) {
		super();
		this.num = num;
		this.name = name;
		this.price = price;
		this.desp = desp;
	}

private int num;
private String name;
private int price;
private String desp;
public int getNum() {
	return num;
}
public void setNum(int num) {
	this.num = num;
}
public String getName() {
	return name;
}
public void setName(String name) {
	this.name = name;
}
public int getPrice() {
	return price;
}
public void setPrice(int price) {
	this.price = price;
}
public String getDesp() {
	return desp;
}
public void setDesp(String desp) {
	this.desp = desp;
}
@Override
public String toString() {
	return "Goods [num=" + num + ", name=" + name + ", price=" + price + ", desp=" + desp + "]";
}
public void display() {
	System.out.println(num+" "+name+" "+price+" "+desp);
}
}

这是Constructor测试类:

package com.winking.fanshe;

import java.lang.reflect.Constructor;

import org.junit.Test;

public class ConstructorTest_GoodTest {

	@Test
/**
 * 获得无参的构造方法
 */
	public void demo1() throws Exception{
		Class class1 =Class.forName("com.winking.fanshe.Goods");
		Constructor c =class1.getConstructor();
		Goods goods =(Goods) c.newInstance();
		goods.display();
	}
/**
 * 获得有参的构造方法
 * @throws Exception 
 */
	public void demo2() throws Exception {
		Class class2=Class.forName("com.winking.fanshe.Goods");
		Constructor c2=class2.getConstructor(Integer.class,String.class,Integer.class,String.class);
		Goods goods2=(Goods) c2.newInstance(2,"我",5,"是我");
		System.out.println(goods2);
		
	}

}

获得无参的构造方法demo2()方法运行会出现红色条,而demo1()是运行成功的。

http://img1.sycdn.imooc.com//climg/5d47ed180001b37919201035.jpg

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕阿莹 2019-08-05 18:43:08

同学你好,我在问答 https://class.imooc.com/course/qadetail/141475  中回答了同学的问题,请同学再看一下。

如果还是有问题,可以继续提问

如果我的回答解决了你的疑惑,请采纳!祝学习愉快!


问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师