首页天道酬勤什么是重载和重写,java标识符命名规则

什么是重载和重写,java标识符命名规则

张世龙 05-05 14:42 96次浏览

相反,重载(overload )重载发生在Java的同一类中。 通过定义相同的方法和定义不同的参数列表来区分这些相同的方法。 参数列表的差异可以是参数的类型、参数的数量、参数的顺序。 调用这些方法时,根据传递的参数差异,Java虚拟机在运行时会调用并处理自己的不同方法。 方法重载与方法修饰符无关,因为所有Java修饰符都可以访问同一类中的方法; Java返回值无法区分这些方法。 返回值在运行后出现,但两个参数列表相同的原因是返回相同值的方法只在Java编译时返回错误,而虚拟机不知道在运行时调用的方法,因此方法重载和返回值也无关。

重载示例:

二、重写这里的重写是指,Java在子类中重写了父类的方法,当子类中有与父类相同的方法时,子类的方法覆盖了父类的方法请注意,当子类重写父类中的方法时,子类的方法名称、返回值和参数列表必须与父类中的重写方法相同。 子类的访问控制修饰符范围不能小于父类的范围,子类的方法不能比父类的方法抛出更多异常。 无法重写用final限定的方法。 如果希望调用父类中同名的方法,可以使用super关键字进行调用。

改写例子

三、重载与重写的区别1、出现位置的区别:重载发生在一个类中,重写发生在有继承关系的两个类中。

2、访问控制修饰符的区别:重载对访问控制修饰符没有要求,重写时子类的访问控制修饰符不能小于父类的范围。

3、返回值不同:重载不要求返回值,改写时返回值必须相同。

4、参数列表不同:重载时参数列表必须不同,改写时参数列表必须相同。

5、抛出异常的区别:重载方法可以抛出不同的异常。 子类在重写时抛出的异常类型不能大于父类。

java面向对象,什么是重载和重写