c# 抽象类 抽象方法
2015-11-02 09:29
162 查看
抽象类与非抽象类的主要区别:
·抽象类不能直接被实例化
·抽象类中可以包含抽象成员,但非抽象类中不可以
·抽象类不能被密封
声明抽象方法时需注意:·抽象方法必须声明在抽象类中 ·声明抽象方法时,不能使用virtual、static、private修饰符。
在抽象类中抽象方法不提供实现。
抽象类和接口的区别:
·它们的派生类只能继承一个基类,即只能继承一个抽象类,但是可以继承多个接口。
·抽象类中可以定义成员的实现,但接口中不可以。
·抽象类中包含字段、构造函数、析构函数、静态成员或常量等,接口中不可以。
·抽象类中的成员可以私有的(只要不是抽象的)、受保护的、内部的或受保护的内部成员,但接口中的成员必须是公共的。
PS:抽象类和接口这两种类型用于完全不同的目的。抽象类主要用作对象系列的基类,共享某些主要特性,例如共同的目的和结构。接口则主要用于类,这些类在基础水平上有所不同,但仍然可以完成某些相同的任务。
·抽象类不能直接被实例化
·抽象类中可以包含抽象成员,但非抽象类中不可以
·抽象类不能被密封
声明抽象方法时需注意:·抽象方法必须声明在抽象类中 ·声明抽象方法时,不能使用virtual、static、private修饰符。
在抽象类中抽象方法不提供实现。
抽象类和接口的区别:
·它们的派生类只能继承一个基类,即只能继承一个抽象类,但是可以继承多个接口。
·抽象类中可以定义成员的实现,但接口中不可以。
·抽象类中包含字段、构造函数、析构函数、静态成员或常量等,接口中不可以。
·抽象类中的成员可以私有的(只要不是抽象的)、受保护的、内部的或受保护的内部成员,但接口中的成员必须是公共的。
PS:抽象类和接口这两种类型用于完全不同的目的。抽象类主要用作对象系列的基类,共享某些主要特性,例如共同的目的和结构。接口则主要用于类,这些类在基础水平上有所不同,但仍然可以完成某些相同的任务。
相关文章推荐
- C#语言基础语句
- C#:浅析结构与类的区别
- C#面向对象设计模式纵横谈——5.Factory Method 工厂方法模式(创建型模式)
- 20151024_004_C#基础知识(C#中的访问修饰符,继承,new关键字,里氏转换,is 和 as,多态,序列化与反序列化)
- C#中IDisposable
- C#原子操作 Lock用法
- C# 常用接口学习 ICollection<T>
- C#编程练习(分支语句+运算符的应用)
- C#简介
- C#计时器
- c#语句 (随堂练习)
- 空合并操作符
- 《CLR via C#》---枚举标志和标志位
- C#编写的扫雷游戏
- BC#62C题求二叉树不同节点数的子树的个数
- 2015-10-27 C#3
- C#中静态与非静态方法比较
- C#概述
- Direct3D基础
- 【C#】winform子窗体与父窗体传值,子窗体与子窗体传值