在认识清楚Java的基础知识后,我们来进阶详解Java的构造方法。
首先java的构造方法是在创建对象时,通过new运算符调用来创建对象并进行初始化的特殊方法。
构造方法有以下几个特点:①构造方法名与其所在的类名相同;②构造方法无返回值类型,则返回void,否则不是构造方法,而是一般成员方法;③构造方法只通过new运算调用;④构造方法可以没有参数,也可以有多个参数;⑤构造方法可以重载;⑥构造方法不能被子类继承。
构造方法的调用:只能通过new运算符调用,其参数传递与形参实参结合也在调用时同时完成。其实用new原酸城建对象的一般格式如下:
<类名> <对象名> = new <类的构造方法>([参数列表]);
解析一下这语句就是,由new通知运行系统为所创造的对象在开辟一个单元,自动匹配并调用相应的构造方法,使用给定的[参数列表]为所创建的对象进行初始化,使新建对象的各个变量获取值。
这里解释一下形参和实参,形参是方法定义的参数;实参是方法调用的参数。
还有访问方法和修改方法,也是常用的。顾名思义,访问方法get()是能够返回成员变量值的方法,而修改方法set()是能够修改成员变量值的方法
最后在定义类时,若没有定义任何构造方法,则系统会自动为该类生成一个默认构造方法,用默认构造方法去创建对象使用是默认值,就是方法名和类名依旧相同,但是没有任何形参,不实现任何操作的构造方法。
看些例题
1、定义一个名为Cuboid的长方体类,使其继承Rectanele类,其中包含一个表示高的double型成员变量 height定义一个构造方法Cuboid(double length,double width,double height);再定义一个求长方体体积的volume()方法。编写程序,求一个长、宽和高分别为10、5、2的长方体的体积。
//实现类继承格式public class 子类名 extends 父类名
public class Cuboid extends Rectangle{//创建一个Cub