继承

继承既子类与父类之间的关系。子类是父类的一种特例,子类拥有父类所没有的功能。

子类与父类之间的相互赋值——例:

Parent p;
Son c = new Son();
p = c;  //正确,子类对象可以传给父类变量
c = p;  //错误,父类对象变量不可以直接赋值给子类变量

如果确信父类变量中所引用的对象的确是子类类型,则可以通过类型强制转换进行赋值,这种方法便是多态。例:

c = (Child)p;
//
c = p a Child;

 

命名空间与类库


命名空间(namespace)可以看成是类的“容器”,它可以包含多个类,一般引用方法就是在源代码开头使用using语句。命名空间可以嵌套,

声明方法:最外围命名空间  内层命名空间.类名 自定义名 = new 最外围命名空间  内层命名空间.类名();

 

类库相当于一个程序集——为了提高软件开发的效率,人们在整个软件开发过程中大量应用了软件工程的模块化原则,重用已有模块,再开发部分新模块,最后将新旧模块组装起来。

类库的建立方法:

(1)在解决方案上单击右键,按图示点击"新建项目……"

(2)选择类库,给类库一个名字,选择好保存位置,点击确定

(3)建立成功后在类库中写上所需要的方法,然后进行引用——1、在引用中添加类库 2、在代码中写上using语句。

区分类库项目、程序集、命名空间这三者的方法:

(1)每个类库项目编译之后,将会生成一个程序集

(2)类库项目中可以拥有多个类,这些类可属于不同的命名空间

(3)不同的类库项目可以定义相同的命名空间

总的来说,“命名空间”是一个逻辑上的概念,它的物理载体是“程序集”,具体体现为“DLL”(或EXE)文件。在visual studio中,可以通过创建“类库”类型的项目生成程序集。一个程序集可以有多个命名空间,而一个命名空间也可以分布于多个程序集。