`
wsql
  • 浏览: 11757400 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

C#继承的特性

 
阅读更多

面向对象的程序设计技术引入了继承的概念。一个类从另一个类派生出来时,派生类从基类那里继承特性。C#中,派生类从它的直接基类中继承成员:方法、域、属性、事件、索引指示器。除了构造函数和析构函数,派生类隐式地继承了直接基类的所有成员。

一、继承的传递性

派生类从基类那里继承特性。派生类也可以作为其它类的基类。从一个基类派生出来的多层类形成了类的层次结构。就像现在中爷爷,爸爸和儿子的关系。儿子不仅可以访问父类爸爸的所有公有属性方法,也可以访问爷爷的所有公有属性和方法,这种关系称为继承传递性。

二、继承的单一性

继承的单一性是指子类只能继承一个父类,不能同时继承多个父类。C#中,派生类只能从一个类中继承。C#不支持多重继承,也就是说,儿子只能有一个亲生父亲,不能同时拥有多个亲生父亲。C#中使用接口技术实现多重继承。

三、C#中的继承符合下列规则:

1、继承是可传递的。如果C从B中派生,B又从A中派生,那么C不仅继承了B中声明的成员,同样也继承了A中的成员。Object 类作为所有类的基类。

2、派生类应当是对基类的扩展。派生类可以添加新的成员,但不能除去已经继承的成员的定义。

3、构造函数和析构函数不能被继承。除此以外的其它成员,不论对它们定义了怎样的访问方式,都能被继承。基类中成员的访问方式只能决定派生类能否访问它们。

4、派生类如果定义了与继承而来的成员同名的新成员,就可以覆盖已继承的成员。但这并不因为这派生类删除了这些成员,只是不能再访问这些成员。

5、类可以定义虚方法、虚属性以及虚索引指示器,它的派生类能够重载这些成员,从而实现类可以展示出多态性。

6、派生类只能从一个类中继承,可以通过接口实现多重继承。

分享到:
评论

相关推荐

    深入剖析C#继承机制

    C#这种完全面向对象的程序设计语言提供了两个重要的特性--继承性inheritance和多态性polymorphism。 继承是面向对象程序设计的主要特征之一,它可以让您重用代码,可以节省程序设计的时间。继承就是在类之间建立一...

    深入剖析C#继承制资料

    继承是面向对象程序设计的主要特征之一,它可以让您重用...继承就是在类之间建立一种相交关系,使得新定义的派生类的实例可以继承已有的基类的特征和能力,而且可以加入新的特性或者是修改已有的特性建立起类的新层次。

    C#的简单 基本语法

    C#语法入门 1、大小写区别 2、在C#中的布尔类型为bool,而JAVA为boolean 3、C#有一个不安全模式,在此模式之下可以使用指针 4、有枚举类型 5、代理和索引器 6、运算符重载 7、没有throws关键字 下面开始...

    C#程序设计 一本不错的入门书

    它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏和模版,不允许多重继承)。C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向...

    C# 语言规范 版本5.0中文.pdf

    有助于构造健壮、持久的应用程序的若干 C# 特性:垃圾回收 (Garbage collection) 将自动回收不再使用 的对象所占用的内存;异常处理 (exception handling) 提供了结构化和可扩展的错误检测和恢复方法;类 型安全 ...

    C#项目开发-企业人事管理系统

    它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏以及不允许多重继承)。C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件...

    C#教学PPT,c#从入门到精通第四版

    它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏以及不允许多重继承)。C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件...

    详解C#面相对象编程中的继承特性

    主要介绍了C#面相对象编程中的继承特性,是C#入门学习中的基础知识,需要的朋友可以参考下

    C#高级教程_特性在编程中的应用_研究报告

    C#特性,⼀个⾮常强⼤,但对于初学者来说⾮常难懂的功能。为什么在类的前加⼀个“[Serializable]”就可以实现对类的序列化,为什么⽅法 的前⾯加⼀个[DllImpot]就能为⾮托管动态链接库公开静态⼊⼝。今天我们来接开...

    C# 一个完整的类 面向对象三大特性 封装 继承 多态 的示例

    C# 一个完整的类 面向对象三大特性 封装 继承 多态 的示例 封装通过私有字段和公共方法来实现对数据的访问控制。 继承通过派生类Student继承自Person类,获得了Person类的所有属性和方法,并在此基础上扩展了自己的...

    深入 .NET平台和C#编程

    掌握 C# 语言高级特性 6. 贯穿案例 "新闻快客" (MyNewsReader) 新闻阅读器 MySchool 7. 章节分布 理解 .NET Framework 与 C# 用对象来思考:属性与方法 用对象来思考:值类型与引用类型 用集合组织...

    Visual C# 2010程序设计教程(教程PPT+源代码)

    2.6 Visual C# 2010的新特性 2.6.1 大整数类型(Biginteger) 2.6.2 动态数据类型 2.6.3 命名参数和可选参数 2.7 本章小结 2.8 上机练习 2.9 习题 第3章 程序流程控制 3.1 选择结构程序设计 3.1.1 if语句 3.1.2 ...

    C# 4.0语言规范

    所有 C# 类型(包括诸如 int 和 double 之类的基元类型)都继承于一个唯一的根类型:object。因此,所有类型都共享一组通用操作,并且任何类型的值都能够以一致的方式进行存储、传递和操作。此外,C# 同时支持用户...

    C#编程基础1~12

    本套C#入门教程视频(共51节)将从基础入手,教会您使用C#进行应用软件的开发。...它在继承C和C++强大功能的同时去掉了一些它们的复杂特性。它使得程序员可以快速地编写各种基于MICROSOFT .NET平台的应用程序。

    C# 2008程序设计实践教程 光盘

    全书共分14章,内容包括.NET Framework 3.5简介,C#编程基础知识,C#对象和类型,面向对象中的两个重要特性:继承和多态,数组知识,类型转换的使用,C#的字符串和正则表达式,集合的使用,try/catch块、throw子句、...

    C#4.0权威指南.pd

    语法篇对C#的语法进行了系统而全面的讲解,包括标识符和关键字、变量和常量、类型以及类型转换、表达式和运算符、语句、方法、类、继承、多态、接口、结构、枚举、委托、事件、泛型、数组、集合、字符串和正则表达式...

    C#控制台应用程序(封装,继承,多态)

    一个控制台应用程序,封装,继承多态的特性!

    轻松学C#(图解版)

    第二篇是面向对象基础篇,主要介绍类、对象、字段、方法、流程控制、数组、继承、属性、运算符重载、接口等C#基本内容。第三篇是应用技术篇,主要介绍的是异常处理、文件和流、委托、事件、Lambda表达式、命名空间、...

Global site tag (gtag.js) - Google Analytics