C#基础

继承

base 父类创建了构造函数时,子类要用base

里氏转换

1.子类可以复制给父类

2.如果父类中装的是子类对象,那么可以将这个父类强转成子类

is 类型转换 成功true 错误false

as 成功直接返回对象 错误返回null

Array List集合

list. Add

list. AddRange

list.Clear();

Hastable 键值对集合

foreach遍历

根据键去找值,键必须是唯一的,值可以重复

path类(路径)

静态类 path.方法

GitFileName获得文件名

GitFileNameWithoutExtension不包含文件拓展名

GitExtension包含文件拓展名

File类

静态类

create(path)

delete(path)

copy(source,destination)

File.ReadLine(path,编码格式)

File.WriteAllLine()覆盖原数据

File.AppendLine()追加数据

路径

1.绝对路径 电脑的路径

2.相对路径 相对应用程序的路径,尽量使用相对路径

FileStream

FileStream 操作字节的

StreamReader

StreamWriter

面向对象之多态

让一个对象表现出多种状态(类型)

实现多态的三种手段

1.虚方法

  1. 将父类的方法标记为虚方法,使用关键字virtual,可以被重写,override

2.抽象类

  1. 当父类中的方法不知道如何去实现的时候,可以考虑将父类写成抽象类,方法写成抽象方法

3.接口

List泛型集合

list.Add();

list.AddRange

list.ToArray 转集合

装箱、拆箱

装箱:将值类型转换为引用类型

拆箱:将引用类型转换为值类型

是否发生装箱,拆箱,要看两种类型是否有继承关系,存在继承关系才有装箱和拆箱。

字典集合

Dictionary<T,T> dic=new Dictionary<T,T>
    

访问修饰符

public 公开的、公共的

private 私有的

protected 类的内部以及子类

internal 当前项目中

protected internal

只能修饰类的:public internal

值传递和引用传递

1.值类型:int double char decimal bool enum struct

2.引用类型:string 数组 自定义类 集合 object 接口

序列化和反序列化

序列化:将对象转换为二进制

反序列化:将二进制转化为对象

作业:传输数据

接口

接口就是一个规范、能力。

语法

  1. interface I..able

  2. 不允许添加访问修饰符 默认public

    方法 自动属性

  3. 接口不能实现

  4. 接口与接口可以继承,而且可以多继承 ,类可以继承接口

  5. 实现接口的子类,必须实现该接口的全部成员

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

  7. 显示实现接口,解决重名问题

posted @ 2021-05-25 10:47  ganph  阅读(73)  评论(0)    收藏  举报