重载是什么 重载是什么意思

overload 对我们来说可能比较了解,可以翻译为重载,它是指我们可以定义一些名字同样的方法,根据定义不同的输入参数来划分这些方法,然后启用时,VM 便会针对不同的参数款式,来选择合适的方法实行 。

重载是什么 重载是什么意思

文章插图
注意事项1.使用重载时只能通过不同的参数款式 。比如,不同的参数种类,不同的参数数量,不同的参数顺序(自然,同一方法里的几个参数种类务必不一样,比如可以是 fun(int, float),但不能为 fun(int, int));
2.不能通过访问限制、返回类型、抛出的异常开展重新加载;
【重载是什么 重载是什么意思】3.方法的异常类型和数量不会对重新加载产生影响;
4.针对传承而言,假如某一方法在父类里是访问限制是 private,那就不能在子类对它进行重载,假如定义的话,也只是定义了一个新方法,而不会达到重载的效果 。
比照区别与override的区别:
override 可以翻译为覆盖,从字面就能知道,这是覆盖了一个方法而且对其重写,以求达到不同的功效 。对我们来说最熟悉的覆盖便是对接口方法的实现,在接口中一般只是对方法展开了申明,而我们在完成时,就需要实现接口声明的全部方法 。除了这个典型的用法之外,大家在继承中也可能会在子类覆盖父类里的方法 。
使用 override(覆盖)要注意下列的几点:
1.覆盖的方法的象征务必要跟被覆盖的方法的象征完全匹配,才能实现覆盖的效果;
2.覆盖的方法的返回值务必和被覆盖的方法的回到一致,或者其子类(jdk1.5.0 版本以上);
3.覆盖的方法所抛出的异常务必和被覆盖方法的所抛出的异常一致,或者其子类;
4.被覆盖的方法不能为 private,不然在其子类中只是新定义了一个方法,并没对它进行覆盖 。