public class Person {
  public Test(String name) {
    Name = name;
  }
  String Name;
}public class Test {
  public static void main(String arg[]) {
    Person me = new Person("Jack"); //这不就传值了吗
  }
}

解决方案 »

  1.   

    你一定只用默认构造器了,如果javabean是自己编的你可以在定义构造器时加一个构造器例如:
    publci class Test{
    //这是默认构造起没有参数
    public Test(){
    super();}
    //这是自己做的构造器,可以自己加入参数
    public Test(写入自己的参数,可以是一个也可以是多个){
    super();
    }
    }
    如果不是自己编的就只能看这个bean提供的构造器了,如果没有自己想用的构造参数可以调用bean中的public 方法
      

  2.   

    不好意思,是我的问题没有问清楚,我是在jsp中调用javabean,
    <jsp:useBean id = "db" scope="page" class = "myclass.opendb"/>这句话好像已经调用了bean的构造函数.我式过了,的确是调用了。
    难道我还能写成这样??
    <jsp:useBean id = "db" scope="page" class = "myclass.opendb(user,password)"/>
    ???
      

  3.   

    好象不行啊。jsp要调用无参数构找函数来处使化。
      

  4.   

    不行?这点都不行,这应该算是javabean 的一个缺陷吗?遗憾阿,我真想用。
      

  5.   

    只能写个init()函数自己手工调用吧。有的可以保存成property.
    就像
    <jsp:useBean id="contextAdmin" scope="page" class="ContextAdmin" />
    <jsp:setProperty name="contextAdmin" property="*" />
    <% String param = request.getParameter("submit");
       if (param != null) {
          contextAdmin.init(request);
    。。
    。。
    不知道行不行。