一、构造方法的定义(一)构造方法有哪些构造方法实例化一个类的对象后,如果要给属性赋值,需要访问对象的属性或setXXX()方法。实例化对象并同时为对象的属性赋值后,就可以使用构造方法了,也叫构造函数。用于初始化对象。(二)构造方法的特点1、构造方法的名称必须与类名完全一致。2、方法名前面没有返回值,甚至没有表示没有返回值的空类型(void)。3.不能使用return语句在方法中返回值。4.构造方法一般定义为public。5.使用new运算符调用构造函数。(3)如何在类中定义构造方法例如:publicclassPerson{publicStringname;//成员变量--namepublicintage;//成员变量--age//构造方法--方法名和类型相同,并且没有返回值类型和返回值publicPerson(Strings,inta){name=s;//为name属性赋值age=a;//为age属性赋值}//say()方法publicvoidsay(){System.out.println("你好!我是"+name+",今年是"+age+"岁。");}publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubPersonp1=newPerson("LiHua",20);//创建第一个对象Personp2=newPerson("小名",19);//创建第二个对象p1.say();//调用对象p2.say的方法();//调用对象的方法}}输出结果为:你好!我叫李华,今年20岁。你好!我是小明,今年19岁。首先,Person类定义了参数化构造方法Person(Strings,inta),在newPerson实例化对象的同时调用参数化构造方法。以及年龄属性赋值。二、构造方法的重载1、构造方法的重载:一个类中可以定义多个构造方法,只要每个构造方法的参数类型或参数个数不同即可。2.如何实现构造方法的重载例如:classPerson{publicStringname;publicintage;//定义两个参数的构造方法publicPerson(Strings,inta){name=s;age=a;}//定义构造一个参数的方法publicPerson(Strings){name=s;}//say()方法publicvoidsay(){//控制台输出name和age的值System.out.println("Hello!Iam"+name+",thisyear"+age+"year.");}}publicclassp16{publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstubPersonp1=newPerson("李华");//创建第一个对象Personp2=newPerson("smallname",19);//创建第二个对象p1.say();//调用对象的方法p2.say();//调用对象的方法}}输出结果为:你好!我是李华,今年0岁。你好!我是小明,今年19岁。上面代码中,Person类中定义了2个有参构造函数和1个有参构造函数,为重载构造函数。在创建实例化对象时,p1和p2因为传入的参数不同,所以调用了不同的构造函数,我们发现这两个构造方法给对象的属性赋值不同。在一个参数的构造方法中,只分配了名称。此时age属性的值默认为0。三、类和数组的使用1.一个案例分析类和数组的使用例如:publicclassPerson5{publicStringname;//namepublicintage;//age//say()methodpublicvoidsay(){System.out.println("你好!我是"+name+",我是"+age+"岁。");}publicstaticvoidmain(String[]args){//TODOAuto-generatedmethodstub//创建数组Person5[]students;students=newPerson5[2];//创建第一个对象zPerson5z=newPerson5();z.name="张三";//给name属性赋值z.age=18;//给age属性赋值//创建第二个对象lPerson5l=newPerson5();l.name="李华";//给name属性赋值Assignmentl.age=20;//给age属性赋值//给数组赋值students[0]=z;students[1]=l;//调用方法l.say();students[0].say();}}从上面的代码中,定义一个Person类,里面有成员变量name和age,还有一个say()方法,在主程序中创建了一个数组(main)方法,数组下标为Array赋值,创建两个对象分别给每个对象的name属性和age属性赋值,最后调用Person类中的方法。4.总结本文主要介绍构造方法,重载构造方法d、类和数组的使用。构造方法介绍对象属性赋值的特点和实例化对象后的构造方法,通过在一个case类中如何定义构造方法来理解这个用法。构造方法的重载可以在一个类中定义多个构造方法,只要每个构造方法的参数类型或参数个数不同即可。类和数组的使用通过一个简单的案例来了解如何使用它们。希望通过本文的学习,对您有所帮助!本文转载自微信公众号《Java进阶学习交流》可通过以下二维码关注。转载本文请联系Java进阶学习交流公众号。
