override和new关键字 隐藏父类的方法
2024-10-19 04:27:55
正常情况下,父类virtual的方法,子类override
class Animal
{
public virtual void EatFood()
{
Console.WriteLine("动物在吃东西");
}
}
class Cat : Animal
{
public override void EatFood()
{
Console.WriteLine("猫在吃鱼");
}
} class Program
{
static void Main(string[] args)
{
Animal animal = new Cat();
animal.EatFood();//输出的是子类的方法
Console.Read();
}
}
另外一种情况,父类的方法不是virtual的,但是子类中有同名的方法
但是子类需要隐藏掉父类的方法
class Animal
{
public void EatFood()
{
Console.WriteLine("动物在吃东西");
}
}
class Cat : Animal
{
new public void EatFood()//通道new关键字,隐藏掉父类的方法
{
Console.WriteLine("猫在吃鱼");
}
} class Program
{
static void Main(string[] args)
{
Animal animal = new Cat();
animal.EatFood();//输出的是父类的方法
Console.Read();
}
}
最新文章
- 20145205 实验一 Java开发环境的熟悉
- HTML5 新增属性和废除属性
- JAVASCRIPT实现网页版:俄罗斯方块
- hdu 2031 杨辉三角
- BZOJ3294: [Cqoi2011]放棋子
- 19. 星际争霸之php设计模式--迭代器模式
- VS2010 win7 QT4.8.0,实现VS2010编译调试Qt程序,QtCreator静态发布程序
- SVM(支持向量机)与统计机器学习 &; 也说一下KNN算法
- ExtJs中实现tree节点,全部是单击展开和收缩效果,和收藏夹点击功能一样
- Helpers\Assets
- 转:Netty系列之Netty高性能之道
- 用eNSP模拟
- 爬虫之requests请求库高级应用
- XamarinEssentials教程获取首选项的值
- 手机配置代理报错invalid host header
- day4_修改文件
- lnmp服务器配置HTTPS
- win7下iis中配置php.ini文件
- jsp学习小记
- Helm 入门安装指南