C# 父类代码动态转换子类
百度上搜索C# 如何父类运行时转换成子类,没有得到相应答案,突然想起C# 有dynamic类型试试看结果成功了。。。
以后编写代码类似这样的代码 就可以删减掉了
if (en.type == EMapEntity.Construction){ en.construction = new ConstructionPOD();}if (en.type == EMapEntity.Creature){en.creature = new CreaturePOD();}
using System; using System.Reflection;class BaseOrm {public int hp = 10; } class RoleOrm : BaseOrm {public string name = "盘子脸"; } class Program {static void Main(string[] args){string scriptName = "RoleOrm";Assembly a = Assembly.GetExecutingAssembly();Type t = a.GetType(scriptName, true);dynamic obj = Activator.CreateInstance(t);Console.WriteLine(obj.hp);Console.WriteLine(obj.name);RoleOrm r = obj;r.name = "plateface";Console.WriteLine(r.name);Console.ReadLine();} }
转载于:https://www.cnblogs.com/plateFace/p/11147453.html
C# 父类代码动态转换子类相关推荐
- Java父类强制转换子类原则
转载自 Java父类强制转换子类原则 最近,微信群友在讨论子类父类的转换问题,其实不难,给大家用实例来说明一下就很明了了. 我们知道Java中子类转换成父类是没有任何问题的,那父类可以转换成子类吗? ...
- 类型转换异常,父类不能强转换成子类
我们回到java角度上来, 总结一下: 1父对象=new 父类(); 2子对象=new 子类(); 3父对象=new 子类(); 4{ 父对象=new 子类(); 子对象=(子类)父对象; } 上述四 ...
- java字符流的父类_Java基于代码实战的字符流父类、字符转换流、缓冲字符流、过滤流...
1. Java输入输出(I/O)流的知识回顾: 补充:因为这篇文章是基于上一篇的延续,因此将上一篇进行简单的回顾,以便理解本节内容. 1)输入输出(I/O)流分类:共分为字节型输入输出流和字符型输入输 ...
- 父类静态代码块、非静态代码块、构造方法、子类静态代码块、子类非静态代码块、子类构造方法执行顺序
父类 public class Father {static{System.out.println("父类静态代码块");}{System.out.println("父类 ...
- java 动态转换器,Java 编程的动态性,第 5 部分: 动态转换类
Java 编程的动态性,第 5 部分: 动态转换类 在经过一段时间的休息之后,Dennis Sosnoski 又回来推出了他的 Java 编程的动态性 系 列的第 5 部分.您已在前面的文章中看到了如 ...
- 父类指针可以指向子类对象
结论:父类指针可以指向子类对象,但是只能访问父类成员,不能访问子类成员 结论:子类指针不可以指向父类对象,需要类型转换才可以 笔记: <1>.当基类指针指向派生类的时候,只能操作派生类从基 ...
- 父类的引用指向子类的对象
最近有所感悟,写一下最多态新的理解吧: 父类引用指向子类对象指的是: 例如父类Animal,子类Cat,Dog.其中Animal可以是类也可以是接口,Cat和Dog是继承或实现Animal的子类. A ...
- 如何将ListT转换相应的Html(xsl动态转换)(二)
一.前言 紧跟着上一篇随笔,本文主要涉及到如何将xml与xsl动态转换成html,这个才是最关键的地方,所有的内容都是围绕这个主题来进行开展的.根据指定的xsl样式将List<T>转换相应 ...
- vector父类类型可以存放子类吗_拼夕夕三轮面经:被问到反射和泛型的bug,你踏空了吗?...
点击上方"JavaEdge",关注公众号 设为"星标",好文章不错过! 1 当反射遇见方法重载 重载grade方法,入参分别为int.Integer.若不通过反 ...
最新文章
- 写代码如坐禅:你是哪一类程序员?
- 目标文件(.o)结构的简单了解
- php mongodb 子查询,MongoDB数组子查询elemMatch
- CCNP-第十四篇-BGP综合实验
- Python高级——多继承问题(super与mro)
- Flutter Swiper制作轮播效果
- 改变Adobe Acrobat (PDF)高亮工具的颜色
- 苹果发布会不够酷?库克又送来了 iOS 12.2!
- CSS实现水平垂直居中的方法总结
- CSDN博主排名更新,看看原来的前1000名博主现在的排名如何
- r 语言初学者指南_阻止自然语言处理的初学者指南
- 卸载mysql的步骤_卸载MySQL数据库的完整步骤(图)
- 50位中国女性科学家入选2022福布斯
- 可用c语言编程的科学计算器,一个用C语言实现的科学计算器
- UI设计必掌握的软件之一:Axure!
- mysql e 变量_MySQL变量分类及用法简析
- 2022年CISP证书有啥用
- MongoDB学习指导
- 和风天气API调用结果乱码
- 字节跳动P0级事故:实习生删除GB以下所有模型,差点没上头条......
热门文章
- Oracle数据库是如何执行SQL的
- echart雷达图数据图形的填充颜色_数据可视化,职场数据分析都需要哪些常用的图表?...
- linux ssh端口是否打开,如何查看linux中的ssh端口开启状态
- Error creating bean with name ‘fastJsonpResponseBodyAdvice‘ defined in URL xxx
- JAVA打印变量类型
- 添加rabbitmq守护进程
- Vue中使用echarts图表插件
- c++分割字符串方法
- Android开发笔记(一百一十六)网络学习资源
- vue写的页面title中ico图标不显示的问题