C#之里氏转换

简介: C#之里氏转换

之前的博客里提到过继承,即:子类可以继承父类,那么如果父类需要用到子类的东西应该怎么办呢?我们可以利用里氏转换进行相应的转换。


里氏转换:子类转父类,父类转子类。子类可以音是转换为父类,父类不可以隐式转换为子类,必须强制转换。


例如:person为父类,teacher为子类  


person  P=newperson();//类的实例化


teacher  t=(teacher)P//父类强制转为子类,但是如果直接这么写报错的话吗覅类不能转为子类


正确方式:Person  P=new  teacher()

               teacher   t=(teacher) p//父类强制转换为子类


IS用法:转化,返回值为bool值,true为能转换,false不能转换


2e7efb335ef5627c0d075d279fe1d85e_20201213142310445.png


as用法:转换,如果转换不了的,不报异常,返回来的是null值


ef3a169c3af6e3f0b39eb8802dd39766_watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NTMwOTE1NQ==,size_16,color_FFFFFF,t_70.png


以上是对历史转化的浅认识,如果有不足的地方,还请各位大佬多已补充!


相关文章
|
1月前
3D转换
【10月更文挑战第6天】3D转换。
29 4
|
1月前
2D转换
【10月更文挑战第6天】2D转换。
34 3
|
6月前
|
编译器 C++
47不同类型数据间的转换
47不同类型数据间的转换
33 0
|
存储 Python
什么是数据类型,都有什么,如何转换
什么是数据类型,都有什么,如何转换
146 0
|
C语言 C++
C++——数据类型之间的转换
C++——数据类型之间的转换
|
JSON JavaScript C语言
转换类型的那些事儿
转换类型的那些事儿
118 0
XWindow与GtkWindow的转换
XWindow与GtkWindow的转换
93 0
|
Unix
weppy格式的转换
weppy格式的转换
155 0
|
JavaScript 前端开发 开发者
13、数据类型的转换
JavaScript 是一种动态类型语言,变量没有类型限制,可以随时赋予任意值。
137 0