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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© xiaobai198611 黑马帝   /  2011-11-3 10:27  /  2365 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

在c#中有多种类,比如普通类,静态类,密封类,抽象类等,它们的区别是什么?而接口做为特殊的类,又与前者类区别在哪?

3 个回复

倒序浏览
普通类就不多说了

静态类
静态类在加载包含该类的程序或命名空间时由 .NET Framework 公共语言运行库 (CLR) 自动加载。
静态类的主要功能:
1.它们仅包含静态成员。
2.它们不能被实例化。
3.它们是密封的。
4.它们不能包含实例构造函数。
静态类中的构造函数不能有访问修饰符和参数,静态类不能被继承也不能继承其他自定义的类。静态方法可以被重载但不能被重写

密封类
关键字为:sealed,放于class前,密封类不能用在基类,密封类的主要作用为:防止派生

抽象类
关键字为:abstract。抽象类不能被实例化。抽象类中的实例化函数不可以被调用,只有通过子类来调用。静态函数可通过类名.方法名来调用。抽象类中不能有抽象构造函数也不能有抽象字段。抽象类的访问修饰符不能为private

接口
接口的关键字为:interface,接口也不能被实例化。
接口除了可以包含方法之外,还可以包含属性、索引器、事件,而且这些成员都被定义为公有的。除此之外,不能包含任何其它的成员,例如:常量、域、构造函数、析构函数、静态成员。
一个类可以直接继承多个接口,但只能直接继承一个类(包括抽象类)。
回复 使用道具 举报
1.普通类:包含属性和方法
2.静态类:关键字(static)最大的特点就是能够共享,但是不能被实例化,可以直接使用其方法和属性
3.密封类:关键字( sealed),密封类主要的目的是防止派生。
4.抽象类:关键字(abstract),抽象类不能实例化。
5.接口:借口只包含方法、事件、委托的签名,不实现,没有属性
自己的见解,希望大家多多指点。
回复 使用道具 举报
学习过了……{:soso_e179:}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马