A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 唐学松 黑马帝   /  2012-2-26 11:06  /  1760 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

定义一个抽象类,然后一个子类继承他,
当子类要创建对象时必须覆盖父类的所有的抽象方法才能被实例化,
是不是可以理解为抽象子类要实例化,必须把父类的抽象方法变成具体方法,

2 个回复

倒序浏览
抽象类就是向上抽取的一个共性 通过子类来实现扩展。肯定要子类来复写抽象类中的方法 才有意义
回复 使用道具 举报
抽象类的特点:这是我找的 一起学习下
1、抽象类不能直接实例化,并且对抽象类使用 new 运算符是编译时错误。虽然一些变量和值在编译时的类型可以是抽象的,但是这样的变量和值必须或者为 null,或者含有对非抽象类的实例的引用(此非抽象类是从抽象类派生的)。   
2、允许(但不要求)抽象类包含抽象成员。   3、抽象类不能被密封。   当从抽象类派生非抽象类时,这些非抽象类必须具体实现所继承的所有抽象成员,从而重写哪些抽象成员。在下边的示例中:   abstract class A{ public abstract void F();}   abstract class B: A{ public void G() {}}   class C: B{ public override void F() { // actual implementation of F }}    抽象类 A 引入抽象方法 F。类 B 引入另一个方法 G,但由于它不提供 F 的实现,B 也必须声明为抽象类。类 C 重写 F,并提供一个具体实现。由于 C 中没有了抽象成员,因此可以(但并非必须)将 C 声明为非抽象类。

评分

参与人数 1黑马币 +2 收起 理由
唐学松 + 2 十分感谢

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马