C#中区别多态、重载、重写的概念和语法结构
来源:互联网 发布:淘宝店运营培训 编辑:程序博客网 时间:2024/05/23 19:00
重写是指重写基类的方法,在基类中的方法必须有修饰符virtual,而在子类的方法中必须指明override。
格式:
基类中:
public virtual void myMethod()
{
}
子类中:
public override void myMethod()
{
}
重写以后,用基类对象和子类对象访问myMethod()方法,结果都是访问在子类中重新定义的方法,基类的方法相当于被覆盖掉了。
重载
用于在给定了参数列表和一组候选函数成员的情况下,选择一个最佳函数成员来实施调用。
public void test(int x,int y){}
public void test(int x,ref int y){}
public void test(int x,int y,string a){}
重载特征:
I.方法名必须相同
II.参数列表必须不相同,与参数列表的顺序无关
III.返回值类型可以不相同
=========================
但如果有泛型,就要注意了!
多态
c#的多态性主要体现在类的继承上:
子类继承父类的时候,可能出现同名但方法定义不同的情况,
所以在子类中会将原方法覆盖,实现自身的要求.
using System;
class Employee
{
virtual public void CalculatePlay()
{
Console.WriteLine("Employee");
}
};
class SalariedEmployee: Employee
{
override public void CalculatePlay()
{
Console.WriteLine("Salary");
}
};
class PolyApp
{
public static void Main()
{
Employee baseE1 = new Employee();
baseE1.CalculatePlay();
Employee baseE2 = new SalariedEmployee();
baseE2.CalculatePlay();
SalariedEmployee s = new SalariedEmployee();
s.CalculatePlay();
}
};
- C#中区别多态、重载、重写的概念和语法结构
- 在C#中重写、隐藏和重载的概念
- C# 重写和重载
- C#重载和重写的区别
- C#重载和重写的区别
- c#的重写(override)和重载(overload)
- 【C#基础】重写和重载的区别
- c#方法的重载和重写
- 方法重载与方法重写的概念和区别
- C#中的重写和重载
- c#的重写(override)和重载(overload)的小解
- C++运算符重载的概念和语法
- [概念] 方法的重载与重写
- c#中的重载和重写区别
- c#中的重载和重写区别
- C#中重载、重写和隐藏
- 【C#基础】重载和重写(覆盖)
- 温习下c#中的重载和重写
- OpenLdap for Ubuntu 9 学习笔记(1)
- vim 右键关联,单VIM多TAB页使用
- 限次连续若干同色球概率算法
- Linux Kernel Developement process base on debian OS
- Windows常用命令及快捷键大全(非DOS)
- C#中区别多态、重载、重写的概念和语法结构
- 谈谈软件从业学习方向
- 冒泡排序
- OpenCV使用的一些经验总结
- E63 UCWEB 6.7正式版下载,免签名。
- VB 录入字母大写自动转换成小写及小写自动转换成大写
- GSM短消息的pdu和text模式的区别是什么?
- 手工查杀木马
- 面向对象思想----不看后悔!