c#中关于里氏转换
的有关信息介绍如下:里氏转换在c#中,非常重要,本文记录学习里氏转换的过程
里氏转换有两个概念:
子类的对象可以赋值给父类
如果父类含有子类的对象,那么父类可以强制转换成子类
首先在vs中创建一个父类Person类,然后再创建一个子类Student类,具体代码如图
首先里氏转换的第一条
Student s = new Student();
Person p = s;
将子类对象赋值给父类
同时可以简写成Person p=new Student
里氏转换第二条
Student s = new Student();
Person p = s;
Student ss=(Student)p;//因为父类含有子类的成员,所以可以强制转换
如图就不可以,因为父类的成员不含有子类的对象,所以强转会报错
里氏转换的实际使用例子