java中重载与重写的区别

来源:互联网 发布:淘宝免单哪里找 编辑:程序博客网 时间:2024/06/10 23:05

重载(Overloading)
1)方法重载是已统一的方式处理不同类型数据的一种手段。多个同名方法同时存在,具有不同参数个数/类型,重载是类的多态性的一种表现;
2)java方法的重载,就是在一个类中可以创建多个方法,相同的方法名,不同的参数和不同的定义,调用方法时根据传递的参数个数和参数类型来匹配对应的方法,这就是多态性;
3)重载的时候,方法名要相同,但是传递的参数个数和类型不同,返回值类型可以相同也可以不相同。
重写(override)
1)父类与子类之间的多态性,对父类的方法进行重新定义。如果子类中定义的方法与父类的方法具有相同的名称和参数,我们说该方法被重写了。在java中,子类可以继承父类的方法,而不需要重新编写相同的方法。但有时子类不想原封不动的继承父类的方法,而是想做一定的修改,这就采用方法的重写,也叫方法覆盖;
2)若子类的方法与父类某一方法具有相同的名称、参数、返回类型,则子类的方法将覆盖父类中的方法。如果需要使用父类中的方法,可以使用super关键字,该关键字引用了当前类的父类;
3) 子类函数的访问修饰权限不能少于父类的;

原创粉丝点击