深入剖析C#继承机制5
2004-12-06 22:37
501 查看
四、多级继承
一些面向对象语言允许一个类从多个基类中继承,而另一些面向对象语言只允许从一个类继承,但可以随意从几个接口或纯抽象类中继承。
只有C++支持多级继承,许多程序员对此褒贬不一。多级继承常会引起继承来的类之间的混乱,继承而来的方法往往没有唯一性,所以C#中类的继承只可以是一个,即子类只能派生于一个父类,而有时你必须继承多个类的特性,为了实现多重继承必须使用接口技术,下面是对接口的多重继承进行介绍:
一些面向对象语言允许一个类从多个基类中继承,而另一些面向对象语言只允许从一个类继承,但可以随意从几个接口或纯抽象类中继承。
只有C++支持多级继承,许多程序员对此褒贬不一。多级继承常会引起继承来的类之间的混乱,继承而来的方法往往没有唯一性,所以C#中类的继承只可以是一个,即子类只能派生于一个父类,而有时你必须继承多个类的特性,为了实现多重继承必须使用接口技术,下面是对接口的多重继承进行介绍:
using System ; //定义一个描述点的接口 interface IPoint { int x { get ; set ; } int y { get ; set ; } } interface IPoint2 { int y { get ; set ; } } //在point中继承了两个父类接口,并分别使用了两个父类接口的方法 class Point:IPoint,IPoint2 { //定义两个类内部访问的私有成员变量 private int pX ; private int pY ; public Point(int x,int y) { pX=x ; pY=y ; } //定义的属性,IPoint接口方法实现 public int x { get { return pX ; } set { pX =value ; } } //IPoint1接口方法实现 public int y { get { return pY ; } set { pY =value ; } } } class Test { private static void OutPut( IPoint p ) { Console.WriteLine("x={0},y={1}",p.x,p.y) ; } public static void Main( ) { Point p =new Point(15,30) ; Console.Write("The New Point is:") ; OutPut( p ) ; string myName =Console.ReadLine( ) ; Console.Write("my name is {0}", myName) ; } } |
相关文章推荐
- 深入剖析C#继承机制4
- 深入剖析C#继承机制3
- 深入剖析C#继承机制2
- 深入剖析C#继承机制1
- 怎样通过Visual C#.net创建一个DTS任务
- 使用 Visual C# .NET 向 Microsoft Excel 2002 传输 XML 数据
- [收藏]WINFORM(C#)的键盘测试
- C#中对注册表的操作(原创)
- MP3文件分析:TAG区,C#小试牛刀!
- 在C#用GDI+实现图形图像的任意变形效果?
- C#.NET 中的类型转换[收藏]
- C#数据访问类
- 使用C#在进度条中显示复制文件的进度
- 如何通过C#调用CHM帮助文件
- 使用ADO.NET 和C# 处理BLOB 数据
- Using the Network Functions in C# (Part I - User Functions)
- C# 运算符
- .Net/C# 应用程序直接读取本地 Cookies 文件 (由于 WinXP SP2 调用 API: InternetGetCookie 无果)
- .Net/C# 应用程序直接读取本地 Cookies 文件 (由于 WinXP SP2 调用 API: InternetGetCookie 无果)
- 唉~这种SOHO的生活啊。