class A {
public void method() {
System.out.println("A's method is running.");;
}
}
class B {
public void method() {
System.out.println("B's method is running.");;
}
}
class Factory {
@SuppressWarnings("unchecked")
public static <T> T getInstance(String className) {
T instatnce = null;
try {
Class<?> c = Class.forName(className);
instatnce = (T) c.newInstance();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
return instatnce;
}
public static <T> T getInstance(Class<T> c) {
T instance = null;
try {
instance = c.newInstance();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
return instance;
}
}
class Main {
public static void main(String[] args) {
A a = Factory.getInstance("A");
a.method();
B b = Factory.getInstance(B.class);
b.method();
}
}
分享到:
相关推荐
在Java编程语言中,反射(Reflection)是一种强大的工具,它允许程序在运行时检查和操作类、接口、字段和方法的信息。通过反射,我们可以动态地创建对象、调用方法、访问字段,甚至处理私有成员,这在某些情况下非常...
2. 命名空间:`System.Reflection`命名空间包含所有与反射相关的类。它是访问类型、成员和元数据的关键入口点。 二、动态类型创建与实例化 1. `Activator.CreateInstance()`: 这个静态方法允许我们在运行时根据类型...
在C#编程语言中,反射(Reflection)是一个强大的工具,它允许程序在运行时检查自身的行为,包括类、接口、属性、方法等元数据信息,并能够动态地创建对象和调用方法。这篇压缩包文件提供了关于C#反射的实践示例,...
C#反射(Reflection)详解 什么是反射 命名空间和装配体的关系
Unity Planar Reflection平面反射
Java反射机制是Java编程语言中的一个重要特性,它允许程序在运行时动态地获取类的信息并进行操作。这一机制使得Java具备了动态性,能够在运行时分析类的结构,调用方法,访问字段,以及创建对象等。以下是关于Java...
在"JAVA私塾笔记整理——反射机制(Reflection)"这份文档中,我们将深入探讨反射机制的基础知识、用途和实现方式。 1. **反射机制的基本概念** 反射机制是Java提供的一种能够在运行时分析类和对象的能力。它允许...
* 使用欧洲气象卫星应用组织提供的COSMIC掩星反射reflection_flag实验数据。 知识点六:数据处理方法 * 根据reflection_flag实验数据中对掩星反射事件的分类标准,统计发生反射的掩星信号分布区域以及随时间变化的...
C#反射(Reflection)是.NET框架提供的一种强大的元数据访问机制,它允许程序在运行时检查自身的行为和属性。在C#中,反射允许我们动态地创建对象、获取类型信息、调用方法、访问字段和属性,以及遍历类型的继承层次...
为什么要PBR? 1.渲染更逼真的画面 - 逼真画面 ≈ 高品质画面 -> 高品质游戏不可或缺的因素 * * 至少大部分欧美人士是这么认为的 2.有利于工业化生产 - 用较少的PBR参数表达丰富的质感,便于行业...Specular Reflection
"ReflectionExample"可能是包含一系列C#代码示例的项目,用于演示如何使用反射来实现动态编程。下面将详细阐述C#反射的基本概念、用途及其常见操作。 一、什么是C#反射? C#反射是一种在运行时检查类型信息的能力...
Java 反射(Reflection)是Java编程语言的一个重要特性,它允许程序在运行时动态地获取类的信息(如类名、方法、字段等)并直接操作对象的内部属性。这为开发者提供了强大的灵活性,能够在不预先知道具体类的情况下...
跟无闻学Go语言:Go编程基础视频教程 的ppt讲义 第 1 课:Go 开发环境搭建 第 2 课:Go基础知识 第 3 课:类型与变量 第 4 课:常量与运算符 ...第13课:反射 reflection 第14课: 并发 concurrency 第15课:项目与坑
Java Reflection (JAVA反射.mht
Java反射是Java编程语言中的一个强大特性,它允许运行中的Java程序对自身进行检查并且可以直接操作程序的内部属性。在北大青鸟ACCP6.0第三学期Y2的JAVA方向课程中,反射作为核心知识点被深入讲解,主要是为了提升...
Object instance = constructor.newInstance("Hello, Reflection!"); ``` 这会创建一个带有给定参数的新实例。 ### 5. 调用方法 `Method`对象提供了`invoke(Object obj, Object... args)`方法,允许我们在运行时...
### Java反射机制详解 #### 一、Java反射机制概述 反射是Java编程语言的一个关键特性,它赋予了Java程序在运行时自我检查的能力,并能够直接操纵程序内部的属性。通过反射,开发者可以在运行时获取类的信息(如...
之前上课的时候老师总结的JavaReflection反射学习资料,内容简单易懂,浅显易懂,适合小白入手学习。。
在Java编程语言中,Reflection(反射)是一种强大的工具,它允许程序在运行时检查和操作类、接口、字段和方法的信息。Reflection的概念基于这样一个事实:Java程序不仅可以执行预先定义的操作,还可以在运行时动态地...