C#基础知识之base关键字介绍_C#教程

一、调用基类已被派生类重写的方法

复制代码 代码如下:

public class Father
{
    public virtual void Say()
    {
        Console.WriteLine("Father Say");
    }
}
 
public class Son : Father
{
    public override void Say()
    {
        base.Say();
        Console.WriteLine("Son Say");
    }
}

调用:

复制代码 代码如下:

Son s = new Son();
s.Say();

执行代码会先输出Father Say,然后输出Son Say。

二、指定派生类实例时调用基类的构造函数

复制代码 代码如下:

public class Father
{
    public string Name { get; set; }
    public Father()
    {
        Name = "Father";
    }
}
 
public class Son : Father
{
    public Son()
        : base()
    {
    }
}

创建对象:

复制代码 代码如下:

Son s = new Son();

运行之后Son的实例Name属性为Father。

三、Base在EntityFramework中的使用,如下图:

注意:base关键字不能在静态方法中使用。

时间: 2024-11-18 23:56:07

C#基础知识之base关键字介绍_C#教程的相关文章

C#基础知识之this关键字介绍_C#教程

一.this可以代表引用类的当前实例,包括继承而来的方法,通常可以省略. 复制代码 代码如下: public class Person {     public string Name { get; set; }     public int Age { get; set; }     public Person(string Name, int Age)     {         this.Age = Age;         this.Name = Name;     } } 这个不用多说

C#基础知识之new关键字介绍_C#教程

一.运算符 用于创建对象和调用构造函数.这种大家都比较熟悉,没什么好说的了. 二.修饰符 在用作修饰符时,new 关键字可以显式隐藏从基类继承的成员. 无new关键字代码: 有new关键字代码: 结果: 注意: 在子类中用 new 关键字修饰定义的与父类中同名的方法,叫覆盖.覆盖不会改变父类方法的功能. 当子类创建父类时,代码中A c = new B(),覆盖不会改变父类的功能.依然还是调用父类的功能. 三.new 约束 用于在泛型声明中约束可能用作类型参数的参数的类型. public clas

最基础知识摄像机之镜头介绍

关于最基础知识摄像机你了解多少,本文小编要为大家介绍的是最基础知识摄像机的镜头知识. 1.镜头的种类(根据应用场合分类) 广角镜头:视角90 度以上,观察范围较大近处图像有变形. 松下公司有WV-LA2R8C3.WV-LA210. 标准镜头:视角30 度左右,使用范围较广.松下公司有WV-LA9C3B. 长焦镜头:视角20 度以内,焦距可达几十毫米或上百毫米.松下公司有WV-LA18A.WV-LZ62/8 等. 变焦镜头:镜头焦距连续可变,焦距可以从广角变到长焦,焦距越长则成像越大.松下公司型号

C# 中的var关键字详细介绍_C#教程

C# var关键字详解 var 是3.5新出的一个定义变量的类型 其实也就是弱化类型的定义 VAR可代替任何类型 编译器会根据上下文来判断你到底是想用什么类型的 至于什么情况下用到VAR 我想就是你无法确定自己将用的是什么类型 就可以使用VAR 类似 OBJECT 但是效率比OBJECT高点. 或者通俗的讲:   var可以理解为匿名类型,我们可以认为它是一个声明变量的占位符.它主要用于在声明变量时,无法确定数据类型时使用. 使用var定义变量时有以下四个特点: 1. 必须在定义时初始化.也就是

c# 类和成员的修饰详细介绍_C#教程

基本概念: 一.类是对于业务处理对象的封装, 包括状态和行为的封装. 二.类的成员种类: 1.常量: 数据值恒定不变的一个符号 2.字段: 字段表示一个只读或者可读写的数据值. 通常用字段来标识一个类或者类产生对象的某种状态, 在实践中,通常将字段标识为private, 避免从类/对象外破坏类/对象的状态. 3.实例构造器(Constructor):将新对象的实例字段初始化为良好初始状态的一种特殊方法. 4.类型构造器,也就是静态的Constructor, 用来初始化类的静态字段. 5.方法:一

C# 泛型深入理解介绍_C#教程

引言: 在上一个专题中介绍了C#2.0 中引入泛型的原因以及有了泛型后所带来的好处,然而上一专题相当于是介绍了泛型的一些基本知识的,对于泛型的性能为什么会比非泛型的性能高却没有给出理由,所以在这个专题就中将会介绍原因和一些关于泛型的其他知识. 一.泛型类型和类型参数 泛型类型和其他int,string一样都是一种类型,泛型类型有两种表现形式的:泛型类型(包括类.接口.委托和结构,但是没有泛型枚举的)和泛型方法.那什么样的类.接口.委托和方法才称作泛型类型的呢 ?我的理解是类.接口.委托.结构或方

C# LINQ to XML应用介绍_C#教程

W3C制定了XML DOM标准,.Net为了支持W3C的标准,从1.1版本开始就引入了XmlDocument类.我在前一篇博客中,介绍了如何使用XmlDocument类来对XML文档进行操作.后来 .Net又引入了LINQ,于是LINQ to XML也就应运而生,所以在.Net中,不仅可以用W3C XML DOM标准,还可以使用LINQ to XML来操作XML文档.下面就来简单介绍一下如何使用LINQ to XML. (一) 加载 加载XML比较常用的有三种方法: 复制代码 代码如下: pub

C# 写入XML文档三种方法详细介绍_C#教程

我在以前的博客中介绍了如何使用XmlDocument类对XML进行操作,以及如何使用LINQ to XML对XML进行操作.它们分别使用了XmlDocument类和XDocument类.在本文中,我再介绍一个类,XmlTextWriter.我们分别用这三个类将同样的xml内容写入文档,看一看哪种写法最直观.简便. 我们要写入的XML文档内容为 复制代码 代码如下: <?xml version="1.0" encoding="UTF-8"?> <Co

c#设计模式 适配器模式详细介绍_C#教程

后续内容将包括以下结构模式: 适配器模式(Adapter):Match interfaces of different classes合成模式(Composite):A tree structure of simple and composite objects装饰模式(Decorator):Add responsibilities to objects dynamically代理模式(Proxy):An object representing another object享元模式(Flywei