您的位置:首页 > 编程语言 > C#

(教学思路 C#之类五)类的分类(静态类、实例类、嵌套类、结构、简单的抽象类、简单的密封类)

2008-12-14 01:01 666 查看
本节课我们来学习类的扩展分类,看我的标题中就罗列出了类的分类,类按照声明方式和功能定义共分为这六种类,实例类就是我们一直在用的类,class关键字前没有其他的修饰符,之前已经有很多实例类的使用方法了,我们今天主要是学习其他五种类。

静态类

静态类就是在class关键字前加入了static关键字,基本语法是static Class ClassName{} 。

静态类有几个特点:

1.静态类只能包括静态成员

2.类本身无法被实例化,也就是不能创建静态类的对象

3.静态类无法被继承

4.无法包含实例构造方法

所以我们在创建静态类的时候,必须注意到以上四点,下面的实例是简单的静态类的使用。

class Program

2 //定义一个静态类名字叫做StaticClass

10 static class StaticClass

11 class Program

2 //定义一个静态类名字叫做StructName

16 public struct StructName

17namespace hello

2 //定义一个抽象类abstractclassName

2 abstract class abstractclassName

3
使用抽象类还要记住二点,一:因为抽象类中有可能存在抽象成员,也就是存在没有实现的成员,所以抽象类无法被实例化,也就是无法创建类的实例对象;二:定义抽象成员的时候,为了让继承的子类能够实现这个抽象方法,也就必须把抽象的成员定义成公有、或受保护的成员,这样在抽象类的外部才能访问到这个抽象成员。

密封类

密封类的定义是通过sealed关键字来实现的,密封类可以用来限制扩展性,我也听过把密封类叫成太监类的说法,很形象的说明了密封类的特点,就是没有子类,也就是密封类无法被继承,这一点和静态类一样,下面来看看密封类的基本语法:

sealed class sealedclassName

{

类的主体;

}

密封类除了不能被继承,其他的用法和实例类基本一致,可以有多个构造方法,可以有静态的、也可以有实例的,类的成员也是可以有静态的和实例的。所以就不再演示密封类的用法了,对于密封类来说,它与面向对象编程技术的灵活性和扩展性是相抵触的,所以通常情况下,不建议定义密码类。

本节课就讲到这里,下一节我们要来学习类六:索引器
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: