new一个对象会调用构造方法。

    1. class PersonA {
    2. private string name;
    3. private int age;
    4. public PersonA(String n,int a) //构造方法
    5. {
    6. name = n; age = a;
    7. }
    8. }
    9. class PersonB {
    10. private string name;
    11. private int age;
    12. public PersonB(){}
    13. public PersonB(String n,int a) //构造方法
    14. {
    15. name = n; age = a;
    16. }
    17. }

    PersonB b = new PersonB(),会调用默认的无参构造方法。
    PersonB b2 = new PersonB(“1”,1),会调用带参数的构造方法。
    PersonA a = new PersonA(),会报错,因为找不到无参的构造方法。只有类中没有写构造方法的时候,才会有一个默认的无参构造方法,因为PersonA写了带参数的构造方法,所以默认的无参构造方法不存在。
    PersonA a2 = new PersonA(“1”,1),调用带参数的构造方法。