.NET中重写与重载的区别如何理解?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1604个文字,预计阅读时间需要7分钟。
很多人对重写和重载这两个概念都很模糊,甚至将其混淆。实际上,我们知道,面向对象语言的四大特性是:封装、继承、多态和抽象。而重写和重载是多态的两种表现形式。
重写指的是在子类中重写父类的方法,以实现子类的特定行为。而重载则是在同一个类中,使用相同的名字定义多个方法,这些方法的参数列表不同。
简单来说:- 重写:子类继承父类方法,根据子类的需求进行修改。- 重载:在同一个类中,方法名相同,但参数列表不同。
很多人对“重写”和“重载”这两个概念都很模糊,甚至把它们弄混淆。我们都知道,面向对象语言的四大特征是:抽象、封装、继承和多态。而重写和重载是多态的两种表现形式。多态,顾名思义,就是指多种形态。而重写和重载正好体现了这一点。现在我们以 VB.NET 语言来说明两者的区别。
重写是发生在父类与子类之间的关系。具体来讲就是子类可以重写父类的现有的方法。它要求子类的方法名称及参数必须与父类完全一致。比如吃饭,父亲可以吃两碗面,孩子同样也是吃面,却只能吃一碗。
重载则主要是发生在同一个类当中的,它通过多个名称相同的方法,但方法参数不相同,或者方法返回类型不相同来加以区别。其中,方法参数不相同包括以下几种情况:参数的个数不相同,参数的类型不相同,参数的对应位置不相同。需要说明的是,重载同样可以应用到父类与子类当中。即子类重载了父类的方法。
在 VB.NET 中,重写汲及到的关键字有:OverRidable: 在父类中声明的可以在子类中重写的方法。
本文共计1604个文字,预计阅读时间需要7分钟。
很多人对重写和重载这两个概念都很模糊,甚至将其混淆。实际上,我们知道,面向对象语言的四大特性是:封装、继承、多态和抽象。而重写和重载是多态的两种表现形式。
重写指的是在子类中重写父类的方法,以实现子类的特定行为。而重载则是在同一个类中,使用相同的名字定义多个方法,这些方法的参数列表不同。
简单来说:- 重写:子类继承父类方法,根据子类的需求进行修改。- 重载:在同一个类中,方法名相同,但参数列表不同。
很多人对“重写”和“重载”这两个概念都很模糊,甚至把它们弄混淆。我们都知道,面向对象语言的四大特征是:抽象、封装、继承和多态。而重写和重载是多态的两种表现形式。多态,顾名思义,就是指多种形态。而重写和重载正好体现了这一点。现在我们以 VB.NET 语言来说明两者的区别。
重写是发生在父类与子类之间的关系。具体来讲就是子类可以重写父类的现有的方法。它要求子类的方法名称及参数必须与父类完全一致。比如吃饭,父亲可以吃两碗面,孩子同样也是吃面,却只能吃一碗。
重载则主要是发生在同一个类当中的,它通过多个名称相同的方法,但方法参数不相同,或者方法返回类型不相同来加以区别。其中,方法参数不相同包括以下几种情况:参数的个数不相同,参数的类型不相同,参数的对应位置不相同。需要说明的是,重载同样可以应用到父类与子类当中。即子类重载了父类的方法。
在 VB.NET 中,重写汲及到的关键字有:OverRidable: 在父类中声明的可以在子类中重写的方法。

