1.序列化与反序列化
序列化:对象转换为二进制(为了传输数据,计算机以及网络中的数据都是以二进制进行识别)
[Serializable] 在类的上面加上此语句(带[])才可以将类序列化
BinaryFormatter(FileStream,p)//用于读
BinaryFormatter(Filestream)//用于写,返回Object类型
2.部分类partial(类中定义部分类,所有部分类看作一个类,用途不明)
3.蜜蜂类 sealed :修饰后,类不可以被继承!
4.ToString():是object的方法,所有类都可以重写此方法。
5.接口
不可以写public修饰符,默认public
只可以有方法(封装字段的语句也视为方法)
显式实现接口
实现的时候在子类的方法中写 接口名.方法名(这样在用接口创建变量的时候,调用方法就会调用此实现方法,用子类创建变量的时候,会调用子类自己的同名方法)//创建的对象都是子类是一定的(接口不能创建对象)
注意:在子类中用显式实现接口的时候,一样不用加public
6.抽象类与接口的区别!!!!!!
相同点:
(1).都可以被继承
(2)都不能被实例化
(3)都可以包含方法声明
(4)派生类(子类)必须实现未实现的方法
区别
(1).抽象基类可以定义字段,属性,方法实现。 接口只能定义属性,索引器,事件,方法声明,不能包含字段
(2)抽象类是一个不完整的类需要进一步细化,而接口是一个行为规范。
(3)接口可以被多重实现,抽象类只能被单一继承
(4)抽象类主要定义在关系紧密的一系列类间(例如产品的定义),二接口大多数是关系疏松但是都实现某一功能的类中(产品的功能实现)
(5)抽象类是从一系列相关对象中抽象出来的概念,是反映事物的内部共性,接口是为了满足外部调用,反应的是外部特性
(6)接口仅仅是让你知道了可以调用什么方法
(7)接口可以支持回调,继承不支持
(8)抽象类实现的具体的方法默认为虚方法,接口为非虚
(9)如果抽象类实现接口,则可以把接口中方法映射到抽象类中,但是抽象类本身可以不用实现,用子类去实现
网友评论