里氏转换原则:
1 子类对象可以直接赋值给父类对象;
2 子类对象可以调用父类中的成员,但是父类对象永远只能调用自己的成员;
3 如果父类对象中装的是子类对象,可以将这个父类对象强制转化为子类对象;
is 和 as
is和asdo都可以进行类型转换
is:如果转换成功返回True,否则返回false;
bool ok = ct is Tiger;
Console.WriteLine(ok);
as:如果转换成功返回对应的对象,否则返回null;
if (ct as Cat == null)
Console.WriteLine("false");
else Console.WriteLine("True");