Java中的方法,也就是C语言所说的函数。每个方法可以看做一个独立的模块。
方法的定义
定义方法分为方法的声明和方法的实现。
方法的声明包含:访问修饰符 可选修饰符 返回类型 方法名(形参列表)。
访问修饰符有三种:public公共的;private私有的;protected受保护的。
可选修饰符有静态的static,以及其他可选修饰符,它在方法声明中可写可不写,如static是与对象无关的,无需考虑某个对象去执行的方法,就可以写上static,但如果是需要某个对象去执行的就不需要写访问修饰符static。
返回类型是方法结束后,会返回什么类型的返回值。
方法名是表达这个方法功能的描述,是一个自定义标识符,在书写方法名时需要求见名知意。方法是某一功能的实现,所以一般都是动词或者动宾短语。
形参列表方法执行前需要从调用方给入的先决条件,它包含了参数类型,参数个数,以及参数的顺序。在方法的声明中也是看具体情况,可以写,也可以不写。
方法的实现:方法中花括号及花括号以内的部分。
方法的签名:方法名及参数列表组成。
在定义完方法以后,当我们需要用到方法时,就称为方法的调用。
方法的调用
调用的语法:
若是调用本类的方法,则直接写方法名();
若是调用对象的方法,则是对象.方法名();
若调用的是静态方法,则是类名.方法名();
如若方法的定义要求形参,方法的调用时就需要传实参,上述括号内填写实参值,其类型,数量需与形参列表一致。
方法重载
在一个类中允许存在多个同名的方法,要求参数列表不同,参数列表不同包括参数个数不同,或参数类型不同,或参数顺序不同。其意义在于同一种行为可能会遇到参数等的不同,为了方便调用等,便可以设置成相同的方法名。比如执行数字相加的操作,可以是传两个数相加,也可以传三个数相加,这种行为相同,但是参数列表不同,我们便可以命名为同一个方法名,这种相加的行为就命名为add。
方法重写
方法的重写是存在继承关系中,子类通过继承具备父类的行为,但由于子类该行为的实现可能是特有的,所以子类需要重新把这个方法书写一遍。例如
重写的要求:
1.方法名必须一致;
2.参数列表保持一致;
3.返回类型必须保持一致;
4.子类重写后的访问修饰符必须大于等于父类重写前的访问修饰符;
5.子类重写后不能抛出比父类重写前更多的异常。
构造方法
构造方法是用来产生对象的,默认不写构造方法的情况下,虚拟机(JVM)会自动生成一个公共无参的构造方法。若需要有业务的初始化动作,就需要添加带参构造。
构造方法的要求:
1.构造方法与类名一致;
2.构造方法没有返回值;
3.构造方法的访问修饰符可以是任意一个,但大部分时候是写成public,特殊情况下可以写成其他的;
4.标准Java类需要有公共无参构造,所以一旦写参数构造,要先补上无参构造。