1. 哪些场景使用了java反射

1逆向代码 ,例如反编译
2与注解相结合的框架
3单纯的反射机制应用框架
4动态生成类框架

2. 如何使用JAVA反射/JAVA反射实例

Class<?>class1=null;
class1=Class.forName("com.demo.Person");
//由于这里不能带参数,所以你要实例化的这个类Person,一定要有无参构造函数哈~
Personperson=(Person)class1.newInstance();
person.setAge(20);
person.setName("LeeFeng");

3. 为什么使用java反射

Java反射最大的好处就是能在运行期间,获得某个类的结构、成员变量,用来实例化。版
下列权是具体使用场景:假如我们有两个程序员,一个程序员在写程序的时候,需要使用第二个程序员所写的类,但第二个程序员并没完成他所写的类。那么第一个程序员的代码能否通过编译呢?这是不能通过编译的。利用Java反射的机制,就可以让第一个程序员在没有得到第二个程序员所写的类的时候,来完成自身代码的编译。Java的反射机制它知道类的基本结构,这种对Java类结构探知的能力,我们称为Java类的“自审”。大家都用过Jcreator和eclipse。当我们构建出一个对象的时候,去调用该对象的方法和属性的时候。一按点,编译工具就会自动的把该对象能够使用的所有的方法和属性全部都列出来,供用户进行选择。这就是利用了Java反射的原理,是对我们创建对象的探知、自审。

4. java反射应用有哪些

Reflection(反射) 是 Java 程序开发语言的特征之一,它允许运行中(注意是运行时,而非编译时)的 Java 程序对自身进行检查,或者说“自审”,并能直接操作程序的内部属性。例如,使用它能获得 Java 类中各成员的名称并显示出来,能够通过字符串形式的类名称(包括完整包名)反射性地创建类的实例,能够动态执行类方法等。JavaBean 是 reflection 的实际应用之一,它能让一些工具可视化的操作软件组件。这些工具通过 reflection 动态的载入并取得 Java 组件(类) 的属性。Java反射是动态程序设计的基础。Java语言反射提供一种动态链接程序组件的多功能方法。它允许程序创建和控制任何类的对象,无需提前硬编码目标类。这些特性使得反射特别适用于创建以非常普通的方式与对象协作的库。Java reflection 非常有用,它使类和数据结构能按名称动态检索相关信息,并允许在运行着的程序中操作这些信息。Java 的这一特性非常强大,并且是其它一些常用语言,如 C、C++、Fortran 或者 Pascal 等都不具备的。 但反射有两个缺点。第一个是性能问题。用于字段和方法接入时反射要远慢于直接代码。性能问题的程度取决于程序中是如何使用反射的。如果它作为程序运行中相对很少涉及的部分,缓慢的性能将不会是一个问题。即使测试中最坏情况下的计时图显示的反射操作只耗用几微秒。仅反射在性能关键的应用的核心逻辑中使用时性能问题才变得至关重要。 我最近使用反射写了一个Pojo(实体)基类,你可以到我的Csdn博客上查阅该例程。文章地址为: http://blog.csdn.net/CodingMouse/archive/2009/04/11/4064007.aspx

5. java反射有什么用

JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所内有属性和方容法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的以及动态调用对象的方法的功能称为java语言的反射机制。
Java反射机制主要提供了以下功能:在运行时判定任意一个对象所属的类;在运行时构造任意一个类的对象;在运行时判定任意一个类所具有的成员变量和方法;在运行时调用任意一个对象的方法;生成动态代理。

6. Java反射中如何使用泛型

这个和泛型无关
Class.forName生成的是一个Class,这个Class的类型是无法确定的,不一定就是Collection,所以会有一个提醒

7. 利用JAVA反射技术执行一个类的方法

public class Test {

public Test() {

}

public static void main(String[] args) throws IllegalArgumentException,
SecurityException, IllegalAccessException,
InvocationTargetException, NoSuchMethodException {
Bean bean = new Bean();
System.out.println(bean);
Bean.class.getMethod("setName", String.class).invoke(bean, "Jerry");
Bean.class.getMethod("setAge", int.class).invoke(bean, 25);
System.out.println("After reflection....\n" + bean);
}

}

class Bean {
private String name;
private int age;

public Bean() {
}

public Bean(String name, int age) {
super();
this.name = name;
this.age = age;
}

public String getName() {
return name;
}

public void setName(String name) {
this.name = name;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

public String toString() {
return "NAME: " + this.getName() + "\nAGE: " + this.getAge();
}
}

8. java反射有哪些用途

对于我们来说可能用途并不大,但是对于写框架的人来说用途就很大
比如jsp的javabean,struts,hibernate,spring都用到了反射

9. java反射怎么实现的

Java中反射有如下几种实现方式:
1、通过Class.forName()方法加载字符串,就可以得到该字符串做代表的Class对象。
2、通过类名调用class属性得到该类的Class对象。
例如:Class<?> clazz = String.class也可以得到String类的Class对象。
3、调用实例的getClass()方法。
例如:Date date = new Date();
Class<?> clazz = date.getClass();
通过上边的两句代码就可以得到date实例的Class对象。