.NET基础第十二天


一、绝对路径和相对路径
1) 绝对路径:通过给定的路径能直接在我的电脑中找到这个文件
2) 相对路径:文件相对于应用程序的路径。
我们在开发中应该尽可能使用相对路径
二、装箱和拆箱
1) 装箱:就是将值类型转换为引用类型
2) 拆箱:将引用类型转换为值类型
看两种类型是否发生了装箱或拆箱操作,要看,这两种类型是否存在继承关系。
三、using关键字
将创建文件流对象的过程写在using当中,会自动的帮助我们释放流所占用的资源
***香草的补充:实际上能使用using自动释放资源,是因为你写的这个类继承了IDisposable接口,using会自动帮我们调用我们实现了的Dispose()方法
四、实现多态的手段
1) 虚方法
将父类的方法标记为虚方法,使用关键字virtual,这个函数可以重新被子类重新写一遍
2) 抽象类
当父类中的方法不知道如何去实现的时候,可以考虑将父类写成抽象类,将方法写成抽象方法
3)接口(后面会学)
五、抽象类的特点
1) 抽象成员必须标记为abstract,并且不能有任何实现
2) 抽象成员必须在抽象类中
3) 抽象类不能实例化
4) 子类继承抽象类后,必须把父类中所有的抽象成员都重写(除非子类也是一个抽象类,则可以不重写)
5) 抽象成员的访问修饰符不能是private
6) 在抽象类中可以包含实例成员,并且抽象类的实例成员可以不被子类实现
7) 抽象类是有构造函数的,虽然不能被实例化
8) 如果父类中的抽象方法有参数,那么,继承这个父类的子类在重写父类的方法时必须传入对应的参数
9) 如果抽象父类的抽象方法中有返回值,那么子类在重写这个抽象方法时,也必须要传入返回值
10) 如果父类中的方法有默认的实现,并且父类需要被实例化,这时可以考虑将父类定义成一个普通类,用虚方法来实现多态
11) 如果父类中的方法没有默认实现,父类也不需要被实例化,则可以将该类定义为抽象类
