C#学习之面向对象多态(二)

    技术2022-07-10  90

    1.c#中的访问修饰符

    public :公开的公共的 private:私有的,只能在当前类的内部访问 protected:受保护的,只能在当前类的内部以及该类的子类中访问。 internal:只能在当前项目中访问。在同一个项目中,internal和public的权限是一样。 protected internal:protected+internal

    1)、能够修饰类的访问修饰符只有两个:public、internal。 2)、可访问性不一致。子类的访问权限不能高于父类的访问权限,会暴漏父类的成员。

    2.值类型与引用类型

    值类型在复制的时候,传递的是这个值得本身。 引用类型在复制的时候,传递的是对这个对象的引用。    

    3.序列化与反序列化

    序列化:就是将对象转换为二进制 反序列化:就是将二进制转换为对象 作用:传输数据。   序列化:将这个类标记为可以被序列化的。

    4.partial部分类

    5.sealed密封类 

    不能够被其他类继承,但是可以继承于其他类。

    6.接口

    [public] interface I..able {     成员; }

    7. 接口特点:

    接口是一种规范,只要一个类继承了一个接口,这个类就必须实现这个接口中所有的成员。

    为了多态, 接口不能被实例化。也就是说,接口不能new(不能创建对象)。接口中的成员不能加“访问修饰符”,接口中的成员访问修饰符为public,不能修改。(默认为public) 接口中的成员不能有任何实现(“光说不做”,只是定义了一组未实现的成员)。

    接口中只能有方法、属性、索引器、事件,不能有“字段”和构造函数。

    接口与接口之间可以继承,并且可以多继承。

    接口并不能去继承一个类,而类可以继承接口  (接口只能继承于接口,而类既可以继承接口,也可以继承类)。

    实现接口的子类必须实现该接口的全部成员。

    一个类可以同时继承一个类并实现多个接口,如果一个子类同时继承了父类A,并实现了接口IA,那么语法上A必须写在IA的前面。

    class MyClass:A,IA{},因为类是单继承的。

    显示实现接口的目的:解决方法的重名问题。 什么时候显示的去实现接口: 当继承的借口中的方法和参数一摸一样的时候,要是用显示的实现接口。

    当一个抽象类实现接口的时候,需要子类去实现接口。

    Processed: 0.010, SQL: 9