java中javaBean有属性 属性名未知,现在要给这些属性设置默认值..这个怎么写

csfjie 2012-07-02 08:01:51
请高手指点.下边代码写了一半不会了
public class TestJavaBean {
public static void main(String[] args) throws Exception {
JavaBean j = new JavaBean();
Check(j);
PropertyDescriptor pd1 = new PropertyDescriptor("int", "int".getClass());//从这怎么写,也就是怎么给int设默认值?
Method methodSetX = pd1.getWriteMethod();
methodSetX.invoke("int", 100);

}

public static void Check(JavaBean j) throws IntrospectionException {

BeanInfo beaninfo = Introspector.getBeanInfo(j.getClass());
PropertyDescriptor[] pds = beaninfo.getPropertyDescriptors();// 获取javabean的所有属性
for (PropertyDescriptor pd : pds) {
System.out.println(pd.getPropertyType() + "=" + pd.getName());
}
}
}

class JavaBean {
// 属性
private boolean b;
private int i;
private String s;
private double d;

public boolean isB() {
return b;
}

public void setB(boolean b) {
this.b = b;
}

public int getI() {
return i;
}

public void setI(int i) {
this.i = i;
}

public String getS() {
return s;
}

public void setS(String s) {
this.s = s;
}

public double getD() {
return d;
}

public void setD(double d) {
this.d = d;
}

public void show() {
System.out.println("boolean:" + isB() + ", " + "int:" + getI() + ", "
+ "String:" + getS() + ", " + "double:" + getD());
}
}
...全文
288 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
1.方法的内部类能不能访问方法的局部变量,为什么? 2.分析运行结果,说明原理。(没有分析结果不得分) import java.util.ArrayList; class Data { int val; } public class Test { public static void main(String args[]) { Data data = new Data(); ArrayList list = new ArrayList(); for (int i = 100; i < 103; i++) { data.val = i; list.add(data); } for (Data d : list) { System.out.println(d.val); } } } 3.编一个类,在main方法定义一个Map对象(采用泛型), * 加入若干个对象,然后遍历并打印出各元素的key和value。 4.编一个类,在main方法定义一个Map对象(采用泛型), * 加入若干个对象,然后遍历并打印出各元素的key和value。 5.定义一个文件输入流,调用read(byte[] b)方法将exercise.txt * 文件的所有内容打印出来(byte数组的大小限制为5)。 6.存在一个JavaBean,它包含以下几种可能的属性: 1:boolean/Boolean 2:int/Integer 3:String 4:double/Double 属性未知现在要给这些属性设置默认值,以下是要求的默认值: String类型的默认值为字符串 www.itheima.com int/Integer类型的默认值为100 boolean/Boolean类型的默认值为true double/Double的默认值为0.01D. 只需要设置带有getXxx/isXxx/setXxx方法的属性,非JavaBean属性设置,请用代码实现 7.有一个类为ClassA,有一个类为ClassB,在ClassB有一个方法b,此方法抛出异常, * 在ClassA类有一个方法a,请在这个方法调用b,然后抛出异常。 * 在客户端有一个类为TestC,有一个方法为c ,请在这个方法捕捉异常的信息。 * 完成这个例子,请说出java针对异常的处理机制。 8.编一个程序,获取10个1至20的随机数,要求随机数不能重复。 9.编一个程序,它先将键盘上输入的一个字符串转换成十进制整数, * 然后打印出这个十进制整数对应的二进制形式。 * 这个程序要考虑输入的字符串不能转换成一个十进制整数的情况, * 并对转换失败的原因要区分出是数字太大,还是其包含有非数字字符的情况。 * 提示:十进制数转二进制数的方式是用这个数除以2, * 余数就是二进制数的最低位,接着再用得到的商作为被除数去除以2, * 这次得到的余数就是次低位,如此循环,直到被除数为0为止。 * 其实,只要明白了打印出一个十进制数的每一位的方式 * (不断除以10,得到的余数就分别是个位,十位,百位), * 就很容易理解十进制数转二进制数的这种方式。 10.有100个人围成一个圈,从1开始报数,报到14的这个人就要退出。然后其他人重新开始,从1报数,到14退出。 * 问:最后剩下的是100人的第几个人?

58,453

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧