public class people {
    String peopleName;
    int peopleNum;    public people() {//构造方法1
        peopleName=" zouruixin";
        peopleNum = 23;
    }
    public people(String peopleName1,int peopleNum1){//构造方法2
        peopleName=peopleName1;
        peopleNum=peopleNum1;
    }
如何通过一种方法同时调用两种构造方法啊

解决方案 »

  1.   

    public class people {
        String peopleName;
        int peopleNum;
        String peopleName1="";
        int peopleNum1;    public people() {//构造方法1
            peopleName=" zouruixin";
            peopleNum = 23;
        }
        public people(String peopleName1,int peopleNum1){//构造方法2
            peopleName=peopleName1;
            peopleNum=peopleNum1;
        }
        public void setPeopleName1(String peopleName1)
        {
          this.peopleName1=peopleName1;
        }
        public void setPeopleNum1(int peopleNum1)
        {
          this.peopleNum1=peopleNum1;
        }
        //可通过此方法方法实现
        public void myPeople()
        {
          people() ;
          people(this.peopleName1,this.peopleNum1)
        }
    }不过lz为什么要这样做,很不好的说
      

  2.   

    public class people {
    String peopleName;
    int peopleNum;public people() {//构造方法1
    peopleName=" zouruixin";
    peopleNum = 23;
    }
    public people(String peopleName1,int peopleNum1){//构造方法2
    this();
    peopleName=peopleName1;
    peopleNum=peopleNum1;
    }
    }
    这样调用第二个方法时就也调用第一个了
      

  3.   

    你太强了!我懂了啊~这么说调用构造方法的时候必须用this.才可以了?
    另外,如何给分数啊?
      

  4.   

    能再解释一下this在这里的用法吗?
      

  5.   

    this在这里就是调用自身的构造方法而已。
    如果super()就是调用父类构造。this();
    super();
    都可以根据实际情况带参数(调用不同的构造)。但必须是在构造里,而且必须是第一条语句。
      

  6.   

    在构造方法中调用构造方法是要用this()的,
    并且只能调用一次,而且必须是在第一行,
    下面这个例子应该能说明一点.
    public class People {
    String peopleName;
    int peopleNum; public People() {//构造方法1
    peopleName="zouruixin";
    peopleNum = 23;
    }
    public People(String peopleName1,int peopleNum1){//构造方法2
    this();//在这里用默认的构造器(也可以不是默认的)对数据进行了初始化.
    System.out.println(peopleName);
    System.out.println(peopleNum);
                    //下面的是这个构造器里的内容,它的操作覆盖了第一次的操作.
    peopleName=peopleName1;
    peopleNum=peopleNum1;
    System.out.println(peopleName);
    System.out.println(peopleNum);
    }

    public static void main(String[] args){
    People p = new People("ssss",33);
    }
    }