C#根据输入的字符串来创建类的实例
  abstract class Vehicle
    {
        public abstract void Drive();
    }
    class Car : Vehicle
    {
        public override void Drive()
        {
            Console.WriteLine("Car is driving...");
        }
    }
    class Bus : Vehicle
    {
        public override void Drive()
        {
            Console.WriteLine("Bus is driving...");
        }
    }
    class Program
    {
        static void Main(string[] args)
        {
            string typeName = Console.ReadLine();
            Type type = Type.GetType(new Program().GetType().Namespace + "." + typeName, true, true);
            Vehicle vehicle = (Vehicle)Activator.CreateInstance(type);
            vehicle.Drive();
            Console.ReadKey();
        }
    }运行结果:

C#根据输入的字符串来创建类的实例的更多相关文章
- C++反射机制:可变参数模板实现C++反射(使用C++11的新特性--可变模版参数,只根据类的名字(字符串)创建类的实例。在Nebula高性能网络框架中大量应用)
		1. 概要 本文描述一个通过C++可变参数模板实现C++反射机制的方法.该方法非常实用,在Nebula高性能网络框架中大量应用,实现了非常强大的动态加载动态创建功能.Nebula框架在码云的仓库地 ... 
- c# 利用反射 从json字符串 动态创建类的实例 并动态为实例成员赋值
		转自 http://hi.baidu.com/wjinbd/item/c54d43d998beb33be3108fdd 1 创建自己要用的类 class stu { string _name; int ... 
- C# 利用反射根据类名创建类的实例对象
		“反射”其实就是利用程序集的元数据信息. 反射可以有很多方法,编写程序时请先导入 System.Reflection 命名空间. 1.假设你要反射一个 DLL 中的类,并且没有引用它(即未知的类型): ... 
- C#——反射动态创建类的实例
		“反射”其实就是利用程序集的元数据信息. 反射可以有很多方法,编写程序时请先导入 System.Reflection 命名空间. 若要反射当前项目中的类(即当前项目已经引用它了),可以使用下面的写法. ... 
- kotlin创建类的实例
		Java 中使用new关键字,但是在kotlin中调用函数和创建类的实例直接省略new 比如 new myClass()变成类myClass() 
- 【转】C# 利用反射根据类名创建类的实例对象
		原文地址:https://www.cnblogs.com/feiyuhuo/p/5793606.html “反射”其实就是利用程序集的元数据信息. 反射可以有很多方法,编写程序时请先导入 System ... 
- C#如何根据类的名词创建类的实例
		这个大概分为两种情况:1-在同一程序集访问该类:2-在不同的程序集访问 A:同一程序集,使用微软的创建对象的类:System.Activator: 先通过类名,获取到类型,在使用用于创建本地或远程对象 ... 
- C# Activator.CreateInstance 动态创建类的实例(二)
		using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ... 
- python 创建类的实例对象
		# -*- coding: UTF-8 -*- class Employee: def __init__(self, name, salary): self.name = name self.sala ... 
随机推荐
- Python+Scrapy+Crawlspider 爬取数据且存入MySQL数据库
			1.Scrapy使用流程 1-1.使用Terminal终端创建工程,输入指令:scrapy startproject ProName 1-2.进入工程目录:cd ProName 1-3.创建爬虫文件( ... 
- SpringBoot中时间格式化的5种方法!
			在我们日常工作中,时间格式化是一件经常遇到的事儿,所以本文我们就来盘点一下 Spring Boot 中时间格式化的几种方法.  时间问题演示 为了方便演示,我写了一个简单 Spring Boot 项 ... 
- CSAPP:datalab实验记录
			CSAPP:datalab实验记录 bitXor /* * bitXor - x^y using only ~ and & * Example: bitXor(4, 5) = 1 * Lega ... 
- 利用 PGO 提升 .NET 程序性能
			引子 .NET 6 开始初步引入 PGO.PGO 即 Profile Guided Optimization,通过收集运行时信息来指导 JIT 如何优化代码,相比以前没有 PGO 时可以做更多以前难以 ... 
- Codeforces Round #735 (Div. 2) 题解
			比赛地址:https://codeforces.com/contest/1554. 只有 ABCD 的题解,E 不会. A 答案是 \(\max_i\{a_ia_{i+1}\}\).证明:(反证)如果 ... 
- Linux下获取当前程序的绝对路径
			在Linux开发应用时,我们常常需要在程序中获取当前程序绝对路径,我们可以通过readlink读取符号链接/proc/self/exe进行获取,这个符号链接代表当前程序,它的源路径就是当前程序的绝对路 ... 
- 谈谈 C++ STL 中的迭代器
			C++中的迭代器和指针 在前面的内容中我们简单讲过,STL主要是由三部分组成 容器(container),包括vector,list,set,map等 泛型算法(generic algorithm), ... 
- D. 旅游景点 Tourist Attractions  状压DP
			题目描述 FGD想从成都去上海旅游.在旅途中他希望经过一些城市并在那里欣赏风景,品尝风味小吃或者做其他的有趣的事情.经过这些城市的顺序不是完全随意的,比如说FGD 不希望在刚吃过一顿大餐之后立刻去下一 ... 
- Prometheus MySQL监控+grafana展示
			前言 最近爱上了研究各种杂七杂八的技术. Prometheus是现如今最火的监控软件之一.做为一个运维DBA,不会这个可就OUT了. 本篇博客,演示一下prometheus之通过mysql expor ... 
- C++   //纯虚函数和抽象类 // 语法 virtual 返回值类型 函数名 (参数列表)=0 //当类中有了纯虚函数 这个类也称为抽象类
			1 //纯虚函数和抽象类 2 // 语法 virtual 返回值类型 函数名 (参数列表)=0 3 //当类中有了纯虚函数 这个类也称为抽象类 4 5 6 #include <iostream& ... 
