-------------------------------------------------------------里氏转换----------------------------------------------------
概念:父类容器装子类对象
作用:方便进行对象的储存和管理
使用:is判断 as转换 (括号强转也可)
1.子类可以赋值给父类:(因为-子类对象可以调用父类成员,父类对象永远只能调用自己的成员,如果有地方父类需要使用子类成员则)(里氏转换父类也不能直接调用子类对象,只能简介使用子类对象)
fulei;//父类
studnet;//子类
teacher;//子类
student s=new student();
person p=s;
或者两行合一写成person p=new student();
2.如果父类中装的是子类对象,那么可以将这个父类强转为子类对象
现在p盛放的是student子类对象,那么:
student ss=(student)p;//正确,语法子类名 子类对象=(子类名)父类对象
teacher laoshi=(teacher)p;//错误,因为p里盛放的是student对象,不能转化为teacher
3.is as
is:为了判断盛放有子类对象的父类,强转为子类对象是否成功,成功返回bool为true,失败返回fale
用法:if(p is teacher)//p里装的是不是teacher类?如果是,则返回ture,否则false
{