如果想在派生类中定义与基类成员同名的成员,则可以使用new关键字把基类成员隐藏起来。

如果不适应new关键字,在派生类中定义一个与基类成员同名的成员,编译器将产生警告信息,如下代码演示:

  

        public class Animals
{
public void Eat()
{
Console.WriteLine("动物吃方法");
}
} public class Horse:Animals
{
//想在派生类中也定义一个Eat方法,则会收到警告信息
public void Eat()
{
Console.WriteLine("马吃的方法");
}
}

  

  在实际的软件系统中,若确实需要添加某个方法,但是该方法又与基类的方法同名,那么可以使用new关键字把基类成员隐藏。如下,演示了使用new关键字来

隐藏基类成员的方法:

  

        public class Animals
{
public void Eat()
{
Console.WriteLine("动物吃方法");
}
} public class Horse1:Animals
{
//使用new关键字进行修饰,从而隐藏了基类中同名成员
public new void Eat()
{
Console.WriteLine("马吃的方法");
}
}

若此时扔然想访问基类的成员,则可以使用强制类型转换,把子类强制转换成基类类型,从而访问隐藏的基类成员。(待实践。)

最新文章

  1. 一种简单,轻量,灵活的C#对象转Json对象的方案(续)
  2. jquery ajax异步请求
  3. 购物车数字加减按钮HTML+CSS+JS(有需要嫌麻烦的小伙伴拿走不谢)
  4. hdu 2896 AC自动机
  5. php函数的引用返回
  6. c# 轻量级ORM框架 实现(一)
  7. 在ASP.NET MVC中修改默认代码生成/支架模板
  8. 关于使用百度ueditor时的一些问题
  9. git digest
  10. Spring 使用AspectJ的三种方式
  11. AngularJS学习篇(二)
  12. Maven服务器
  13. 2015 多校联赛 ——HDU5325(DFS)
  14. andrid面试题
  15. Meterpreter提权详解
  16. 谈谈tmpdir与innodb_tmpdir的区别和用处
  17. java反射与动态代理的理解
  18. 在MVC应用程序中使用jQuery的验证
  19. LeetCode 551. Student Attendance Record I (C++)
  20. 【BZOJ3144】[Hnoi2013]切糕 最小割

热门文章

  1. c语言二级指针的使用,malloc内存申请
  2. 简单js的介绍
  3. LOJ P10150 括号配对 题解
  4. ES WIndows 安装 ES与ES-head
  5. Vin2008 X64安装.Net Framework1.1
  6. Codeforces Round #591
  7. Cogs 750. 栅格网络(对偶图)
  8. scrapy框架自定制命令
  9. Result window is too large, from + size must be less than or equal to [10000]
  10. Java-JVM 锁优化