C#中类的继承问题04
using System.Collections.Generic;
using System.Text;
{
class Program
{
static void Main(string[] args)
{
A Aa; //定义一个引用变量 虽然抽象类不可以实例化,但可以声明抽象类的引用变量
C Ca = new C();
Aa = Ca;
Aa.AbstractMethod01(); //调用C类实现的AbstractMethod01()方法,这个是通过多态实现的
Aa.NotAbstractMethod();//调用自身的非抽象方法
Ba = (B)Aa;
Ba.AbstractMethod01();//调用C类实现的AbstractMethod01()方法,原因是多态
Ba.AbstractMethod02();//调用C类实现的AbstractMethod02()方法,原因是多态
Console.ReadKey();
}
}
abstract class A
{
public abstract void AbstractMethod01();//抽象方法,没有主体,结尾以分号结束
public abstract void AbstractMethod02();//抽象方法,没有主体,结尾以分号结束
{
}
abstract class B : A //派生自抽象类A的B可以不实现其抽象方法,但要保证B类也必须是抽象的才行
{
public override void AbstractMethod01() //,派生类B中实现了基类A中的一个抽象方法,另一个不实现是可以的
{ //也就是说,派生类可以不完全实现抽象基类的抽象方法,此时这个派生类必须也是抽象的
}
}
class C : B //最中实现了A类中的抽象方法,终于冲破了“抽象诅咒”
{
public override void AbstractMethod01()
{
}
public override void AbstractMethod02()
{
//throw new Exception("The method or operation is not implemented.");]
Console.WriteLine("C类实现的抽象方法02");
}
abstract class F : A //虽然F类派生自抽象类A,但它可以一个也不实现A中的抽象方法
{ //但要保证F是抽象类
class E : F
{
public override void AbstractMethod01()
{
Console.WriteLine("E类实现的抽象方法01");
}
public override void AbstractMethod02()
{
}
}
}
C#中类的继承问题04相关推荐
- python类与继承person类_关于python中类的继承及self
关于python中类的继承及self 如下,如果调用student类,则可以正常运行,但是如果去掉consumer.__init__(self, fee)中的self,将其改成consumer.__i ...
- python类方法继承_对python中类的继承与方法重写介绍
1.单继承 父类也叫基类 子类也叫派生类 如下所示,继承的关系: 继承的书写格式: class 子类(父类): 方法 实例: class Animal: def eat(self): print(&q ...
- python3类的继承详解_python3中类的继承以及self和super的区别详解
python中类的继承: 子类继承父类,及子类拥有了父类的 属性 和 方法. python中类的初始化都是__init__().所以父类和子类的初始化方式都是__init__(),但是如果子类初始化时 ...
- python中类的继承关系使用什么符号表示_智慧职教: Python中类的继承关系使用( )符号表示?...
智慧职教: Python中类的继承关系使用( )符号表示? 答:2, 芭娜娜频繁描写死亡的真正意图是什么?() 答:寻求走出死亡阴影,重获新生的途径 中国大学MOOC: 脂肪是对人体不好的营养素 答: ...
- java中的类的继承_再谈Java中类的继承
上篇博客谈到了Java中类的继承,但是那些远远不能满足我们在实际操作中的需要,那么怎么才能让子类的功能更强大,并且具有父类的属性呢? 一: 父类 1 public classA {2 3 final ...
- python中类的继承规则
python中类的继承规则 在学习python中的继承规则之前,首先要知道python中类的划分. 只要继承object类的就是新式类,不继承object类的都是经典类. 在python3中,所有的类 ...
- C++中类的继承方式的区别以及private public protected 范围
第一:private,public,protected方法的访问范围. private: 只能由该类中的方法访问,不能被该类的对象访问. protected: 可以被该类中的方法和其友元函数访问,但不 ...
- python3中类的继承
用简单的一句话来理解:继承,这样理解就对了,你的就是我的,但是我的还是我的,但是你有我也有的,我就不稀罕你的,所以调用了父类的时候,self就是我,而不是你 子类继承父类,即子类拥有了父类的属性和方法 ...
- Python中类的继承方法
Python中类与类之间可以继承,继承的叫父类或超类,新创建的叫子类.通过继承,子类可以使用父类的属性,这样可以有效减少代码的冗余度,提高代码重用性. 谈到类的继承,首先要了解构造函数或构造方法. 构 ...
最新文章
- 纯生信发ISME的一次试炼
- matlab clabel函数用法,CLabel函数说明
- 根据mysql数据库日志恢复删除数据
- MySQL-ProxySQL中间件(一)| ProxySQL基本概念
- java pdf 类库_有哪些可以给pdf加水印,java第三方开源类库?
- Pandas Period
- 卡尔曼滤波和粒子滤波最直白的解释
- ENVI入门系列教程---一、数据预处理---3.1 基于自带定位信息的几何校正
- quartus 14.1破解失败解决方案
- 如何进行远程协作办公?
- C# 实验五 银行系统
- Ajax学习一 创建Ajax对象(高洛峰)
- android 无法后台运行,安卓模拟器无法后台?
- 我是谁,读《薇娅:人生是用来改变的》有感
- 考研语法整理(简洁版)
- Answer Set Programming 回答集编程
- Mtime美好时光网 盈利模式
- 绿盟科技软件测试招聘,绿盟科技防火墙产品团队招聘——来加入我们把~
- 输入指令为±10V或4~20mA型伺服阀控制器
- 资深架构师年薪达到50万需具备什么技能?
热门文章
- 编程隐藏child指定列_简单的Excel VBA编程问题解答——完美Excel第183周小结
- 常用android的smali注入代码,android smali代码注入 实战一
- html5做旋转太极图,HTML5 Canvas旋转动画的2个代码例子(一个旋转的太极图效果)...
- 固定导航栏android,Android 状态栏和导航栏的真终极解决方案
- selenium ie 操作cookie_Python3中selenium 怎么操作Cookie?
- C语言第五章实验二答案,《C语言程序设计》实验二 参考答案
- 中国高校计算机考研:计算机数据结构核心考点解析
- alibaba Fastjson的JOSN解析库 -
- ssm整合2 增删改
- python2.X在linux上的安装