base 关键字用于从派生类中访问基类的成员:

  • 调用基类上已被其他方法重写的方法。

  • 指定创建派生类实例时应调用的基类构造函数。

基类访问只能在构造函数、实例方法或实例属性访问器中进行。

从静态方法中使用 base 关键字是错误的。

所访问的基类是类声明中指定的基类。例如,如果指定 class ClassB : ClassA,则无论 ClassA 的基类如何,从 ClassB 上访问 ClassA 的成员。

在本例中,基类 Person 和派生类 Employee 都有一个名为 Getinfo 的方法。通过使用 base 关键字,可以从派生类中调用基类的Getinfo 方法。

C#
public class Person
{protected string ssn = "444-55-6666";protected string name = "John L. Malgraine";public virtual void GetInfo(){Console.WriteLine("Name: {0}", name);Console.WriteLine("SSN: {0}", ssn);}
}
class Employee : Person
{public string id = "ABC567EFG";public override void GetInfo(){// Calling the base class GetInfo method:base.GetInfo();Console.WriteLine("Employee ID: {0}", id);}
}class TestClass
{static void Main(){Employee E = new Employee();E.GetInfo();}
}
/*
Output
Name: John L. Malgraine
SSN: 444-55-6666
Employee ID: ABC567EFG
*/

有关其他示例,请参见 new、virtual 和 override。

本示例显示如何指定在创建派生类实例时调用的基类构造函数。

C#
public class BaseClass
{int num;public BaseClass(){Console.WriteLine("in BaseClass()");}public BaseClass(int i){num = i;Console.WriteLine("in BaseClass(int i)");}public int GetNum(){return num;}
}public class DerivedClass : BaseClass
{// This constructor will call BaseClass.BaseClass()public DerivedClass() : base(){}// This constructor will call BaseClass.BaseClass(int i)public DerivedClass(int i) : base(i){}static void Main(){DerivedClass md = new DerivedClass();DerivedClass md1 = new DerivedClass(1);}
}
/*
Output:
in BaseClass()
in BaseClass(int i)
*/

转载于:https://www.cnblogs.com/huibin-benteng/p/5044151.html

base(C# 参考)相关推荐

  1. c语言strtol函数用法,strtol_字符串 | Strings_C_参考手册_非常教程

    strtol 在头文件中定义 ​ ​ long strtol(const char * str,char ** str_end,int base); ​ (直到C99) long strtol(con ...

  2. Windows下使用Tesseract进行OCR文字识别

    Windows下使用Tesseract进行OCR文字识别 Tesseract最初由惠普实验室支持,用于电子版文字识别,1996年被移植到Windows上,1998年进行了C++化,在2005年Tess ...

  3. java 苹果vcf解析_VCF文件格式解析

    VCF文件全称为Variant Call Format,表示基因组的变异信息,通常为GATK和Samtools软件处理所得到. VCF文件大致可以分为两个部分: 1.以##开头的头文件信息 ##fil ...

  4. 【面试精选】关于大型网站系统架构你不得不懂的10个问题

    该文已加入笔主的开源项目--JavaGuide(一份涵盖大部分Java程序员所需要掌握的核心知识的文档类项目),地址:github.com/Snailclimb/- .觉得不错的话,记得点个Star. ...

  5. Vue——项目部署到非根目录下的解决方案

    问题描述 同一个生产部署项目,基内外网的访问路径并不相同,内网是基于域名根目录来访问,而外网却指向了一个子目录. eg. : vue-router: history模式 内网环境:192.168.1. ...

  6. 【Libevent】Libevent学习笔记(三):事件循环

    00. 目录 文章目录 00. 目录 01. event_base_loop函数 02. event_base_dispatch函数 03. event_base_loopexit函数 04. eve ...

  7. 【Libevent】Libevent学习笔记(二):创建event_base

    00. 目录 文章目录 00. 目录 01. 简介 02. 创建默认的event_base 03. 创建复杂的event_base 3.1 event_config_new函数 3.2 event_b ...

  8. 亿级流量网站架构核心技术_关于大型网站系统架构你不得不懂的10个问题

    来自:JavaGuide(微信号:JavaGuide) 下面这些问题都是一线大厂的真实面试问题,不论是对你面试还是说拓宽知识面应该都很有帮助.之前发过一篇8 张图读懂大型网站技术架构 可以作为不太了解 ...

  9. Julia中的denominator()函数

    Julia| 分母()函数 (Julia | denominator() function) denominator() function is a library function in Julia ...

  10. Linux加密框架 crypto算法模板 以及CBC算法模板实例

    参考链接 Linux加密框架中的主要数据结构(四)_家有一希的博客-CSDN博客 algapi.h - include/crypto/algapi.h - Linux source code (v5. ...

最新文章

  1. Linux管道的原子性,管道机制
  2. 光遇自动弹琴脚本代码_光遇弹琴辅助软件下载-光遇自动弹琴脚本代码下载v1.0_86PS软件园...
  3. caffe学习(一):开发环境搭建,编译caffe(win10)
  4. glibc malloc
  5. VS2005 快捷键
  6. sqlserver 2008安装总是弹出重启提示
  7. c/c++经典面试试题及标准答案
  8. Leetcode--283. 移动零
  9. Tomcat非正常退出导致无法再次启动
  10. (原创) cocos2d-x 3.0+ lua 学习和工作(4) : 公共函数(5): 返回指定表格中的所有键(key):table.keys...
  11. java初学者必看经典
  12. Android TabLayout定制CustomView与ViewPager交互双向联动
  13. IOS不支持2017-09-09的日期格式
  14. 配置虚幻4 使用 Rider for UnReal Engine 开发游戏
  15. 简单旅游景点HTML网页设计作品 DIV布局故宫介绍网页模板代码 DW家乡网站制作成品 web网页制作与实现
  16. 通俗易懂的Spatial Transformer Networks(STN)(二)
  17. 蚂蚁金融科技全面开放战略背后的技术布局
  18. 什么是世界协调时间UTC
  19. [WDS] Disconnected解决方法
  20. 哪款分体式蓝牙耳机最好用?分体式蓝牙耳机推荐!

热门文章

  1. 网络营销——网络营销专员到底是教你如何选择网站页面制作
  2. 制作精美的网站首页模板应该如何操作?
  3. 如何增加新站前期收录几率?
  4. oracle中出现大量active,Oracle技术之大量会话出现resmgr:become active等待
  5. 侧边栏配置_vscode入门:熟悉vscode和初级配置
  6. confluence 卡顿原因总结
  7. xadmin 更改后台一级目录名称
  8. Python数据结构与算法—队列
  9. Web前端JQuery面试题(三)
  10. LeetCode : Valid Parentheses