方法的重载(overloading)与重写(overriding)

原创 2006年06月12日 09:52:00

方法名,参数相同形成重写,重写的方法不能降低原方法的"可见度",也不能改变原方法的返回值类型。

方法名相同,参数不同(个数、类型)形成重载,重载的方法可看成一个全新的方法,与原方法相比它可以有不同的"可见度"和“返回值类型”。如下例:

class A {
 protected int method1(int a, int b) { return 0; }
}
public class B extends A{ 
 public int method1(int a, int b) { return 0; } //正确,重写父类方法,可以扩大访问权限
 //private int method1(int a, int b) { return 0; } //错误,重写父类方法,不能降低了访问权限
 //private long method1(int a, int b) { return 0; } //错误,重写父类方法,不能改变返回值类型
 public short method1(int a, long b) { return 0; }//正确,重载自身的方法,可以有不同的访问权限和返回值类型
 private int method1(int a, long b) { return 0; }//正确,重载自身的方法,可以有不同的访问权限和返回值类型
}

但这里 方法public short method1(int a, long b) { return 0; }和 方法private int method1(int a, long b) { return 0; }不能同时存在,因为在同一类中,不允许存在相同名字和参数类型的方法(重写的方法)。

相关文章推荐

java中方法的重写(overriding)与重载(overloading)的区别

方法的重写(Overriding)和重载(Overloading)是Java多态性的不同表现。重写(Overriding)是父类与子类之间多态性的一种表现,而重载(Overloading)是一个类中多...

Java中的方法重写(Overriding)与方法重载(Overloading)

1.定义 Overriding和Overloading对Java编程新手来说是两个比较容易混淆的概念。 方法重载(Overloading)是一个类中定义了多个方法名相同,而他们的参数的数量不同或数...

Java方法重载(overloading)与方法重写(overriding)

首先我们来讲讲:重载(Overloading)   (1) 方法重载是让类以统一的方式处理不同类型数据的一种手段。多个同名函数同时存在,具有不同的参数个数/类型。   重载Overloading是...

java中的重载(overriding)跟重写(overloading)理解

话说前两天学校来了传说中的“校招”,主要是来宣讲的,对于我们这种普通二本院校,没有那种大公司来的,来了也是打着别人的招牌,我参加了笔试。 哎,虽然都是基础,但是感觉都忘的差不多了,其中一个关于面向对...

重载(Overloading)与 重写(Overriding)

1. 方法重载:针对于同一个类中,相同方法名,不同参数签名的方法 1,方法重载是让类以统一的方式处理不同数据类型,既是:多个方法具有相同方法名,不同方法签名(参数类型/个数不同) 2.调用方法的时...

C++类中的 重写(Overriding) 重载(Overloading) 隐藏

由于之前一直在用C编写代码,最近工作中需要用到C++编写代码,之前对C++中重写、重载、隐藏这3个概念不甚了解,为了整明白这三个概念的定义和作用的,花了半天时间在网上搜索了一些资料,看了一下关于C++...

Overloading(重载)和Overriding(重写)的区别

重写(Overriding)         (1)     父类与子类之间的多态性,对父类的函数进行重新定义。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overri...
  • zzqbkfj
  • zzqbkfj
  • 2012年11月07日 14:16
  • 357

Java学习笔记之重写(Overriding)与重载(Overloading)

更多博文可参考我的个人独立博客:贱贱的梦想 重写(Overriding)重写是子类对父类的允许访问的方法的实现过程进行重新编写!返回值和形参都不能改变。即外壳不变,核心重写! 重写的好处在于子类可...

Overloading,overriding,and extending functions and events 重载,重写和扩展函数和事件

Overloading,overriding,and extending functions and events 重载,重写和扩展函数和事件   In PowerBuilder,when funct...

java 方法的覆盖(overriding)与重载(override)

java 方法的覆盖(overriding)与重载(override) 转自:方法的覆盖与重载 方法的覆盖 在类继承中,子类可以修改从父类继承来的方法,也就是说子类能创建一个与父类方...
  • vane918
  • vane918
  • 2016年10月15日 09:56
  • 105
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:方法的重载(overloading)与重写(overriding)
举报原因:
原因补充:

(最多只允许输入30个字)