`
Junjiejkl
  • 浏览: 62410 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

对main方法的反射

阅读更多
package cn.itcast.javase.reflect;

import java.lang.reflect.Method;

import org.junit.Test;

public class Demo1 {
	@Test
	public void test1() throws Exception{
		//取得Person对应的字节码对象Class
		Class clazz = Class.forName("cn.itcast.javase.reflect.Person");
		Method method = clazz.getMethod("main",String[].class);
		//JDK5.0可变参数,将字符串数组看作一个对象
		method.invoke(null,(Object)new String[]{"a","b","c"});
		//JDK1.4一维数组,
		//method.invoke(null,   new Object[]{new String[]{"a","b","c"}}    );
		//结论:编译但凡遇到数组时拆,遇到对象时不拆,
		//错误根源在于:SUN公司在JDK编译器由1.4升到5.0时的一个BUG所造成的
	}
}

 

分享到:
评论

相关推荐

    详解Golang利用反射reflect动态调用方法

    ### Golang 反射 Reflect 动态调用方法详解 #### 一、引言 反射是许多现代编程语言中的一项重要特性,它允许程序在运行时检查和操作自身的内部结构。Go 语言同样具备这样的能力,它通过 `reflect` 包提供了一套...

    通过反射调用静态方法

    在Java编程中,反射是一种强大的工具,它允许我们在运行时检查和操作类、接口、字段以及方法等对象。本文将详细讲解如何通过反射调用静态方法,并探讨在特定场景下,如MyBatis中的应用。 首先,理解反射的概念是至...

    Java反射调用方法

    `main` 方法是演示反射调用的入口: 1. 创建 `Foo` 类的实例 `foo`。 2. 使用 `foo.getClass()` 获取 `foo` 的类对象 `clazz`,这个类对象代表了 `Foo` 类的 Class 类型。 3. 分别通过 `getDeclaredMethod` 方法...

    C#net反射实现访问类中的私有变量或者方法

    `Test`类中的`Main`方法则演示了如何使用反射来修改`ChangeValue`类实例中的私有变量。 - **获取类型**:使用`GetType()`方法获取`ChangeValue`对象的类型信息。 - **获取私有字段信息**:通过`GetField`方法,并...

    反射,动态加载指定类调用类中的方法

    在“反射,动态加载指定类调用类中的方法”这个主题中,我们将深入探讨如何使用反射来实现动态加载和执行类的方法。首先,我们需要理解几个关键的反射API: 1. `Class<?>`: 这是所有Java类的通用表示,通过`Class....

    关于反射调用方法的一个log

    通常,一个测试类会包含main方法,用于执行反射操作,如`Class.forName()`来加载类,然后通过`Class.getMethod()`获取方法,最后使用`Method.invoke()`来调用方法。 2. `A.java` - 这可能是一个被反射调用的类,它...

    java反射知识点

    首先,下载此资源要明白什么是反射。 对于任意一个类,都能够知道这个类的所有属性和方法;...2.反射main方法 3.反射代理(设计模式) 4.反射数据库操作 5.反射框架 6.反射其他的 希望大家可以给我好评

    java反射操作父类所有属性和方法

    ### Java反射操作父类所有属性和方法 #### 一、引言 在Java编程语言中,反射(Reflection)是一项强大的特性,它允许程序在运行时动态地获取类的信息,并能够直接操作这些信息。通过反射,我们可以获取类的字段、...

    java方法反射的代码

    Java反射是Java编程语言中的一个强大工具,它允许运行中的Java程序对自身进行检查并且可以直接操作程序的内部属性。在Java中,反射主要用于在运行时分析类和对象,包括类的方法、字段、构造器等信息。这对于实现动态...

    利用反射获取DLL或EXE文件的内部信息。

    在.NET框架中,反射是一种强大的工具,它允许程序在运行时检查自身和其他程序集(如DLL或EXE文件)的元数据,获取关于类型、接口、方法、字段、属性等的信息。利用反射,开发者可以动态地创建对象、调用方法、访问...

    反射 reflect 根据方法名得到方法,并根据不同的数据类型参数和不同的返回值类型

    在Java编程语言中,反射(Reflection)是一种强大的工具,它允许程序在运行时检查和操作类、接口、字段以及方法等对象。通过反射,我们可以在不知道对象具体类型的情况下调用其方法,创建对象,访问私有成员,以及...

    kotlin反射方法教程文档kotlin反射方法教程文档

    3. **性能**:虽然反射操作在运行时有一定的性能开销,但是现代JVM和Kotlin编译器都对反射进行了优化,使得性能影响降低。 #### 六、Kotlin反射方法的局限性 尽管反射方法有许多优点,但它也有一些局限性和需要...

    反射实例-JAVA反射机制

    在Java反射中,针对类的不同组成部分(构造函数、字段和方法),`java.lang.Class`类提供了多种反射调用方式来获取信息。以下是几种常用的反射调用: - **获取构造函数**:`Constructor getConstructor(Class[] ...

    反射实例-JAVA反射机制.doc

    Java 反射机制是 Java 语言提供的一种强大的工具,它允许程序在运行时动态地获取类的信息(如类名、属性、方法等)并进行操作。这种能力使得 Java 应用程序更加灵活,能够在运行时发现和修改自身的行为。然而,反射...

    Java技术对接收数组参数的成员方法进行反射

    当我们要对一个接收数组作为参数的方法进行反射调用时,我们通常会遵循以下步骤: 1. 获取类的Class对象:通过`Class.forName()`方法或对象的`getClass()`方法,我们可以获取到任何类的`Class`对象,这为我们提供了...

    P波入射C程序_P波反射系数计算_反射系数_

    本节将详细讲解P波入射时的反射系数计算方法,并通过C程序实现这一过程。 反射系数是衡量入射波能量转化为反射波能量的比例,它是由两种介质的弹性参数(速度和密度)决定的。对于P波来说,有两个重要的反射系数:P...

    Java反射简单小实例

    `main`方法中演示了如何使用反射来调用这些方法。 #### 定义类 ```java public class Admin{ public Admin(){} private String id=""; public String getId(){ System.out.print(id); return id; } ...

    原创asp.net反射超强实现, js反射

    例如,`Type`类代表了.NET框架中的任何类型,`Assembly`类用于加载和操作程序集,`MethodInfo`类提供了对方法信息的访问。在ASP.NET中,反射常用于动态加载用户控件、解析配置文件或者在运行时检查和调用对象的方法...

    java 反射机制例子

    反射的概念在计算机科学中有着广泛的内涵,不仅包括反射本身,还涉及对反射结果的处理和调整。具备反射机制的系统通常具备开放性和原因连接两个基本要素,其中开放性意味着系统对外部变化更为友好;原因连接则指的是...

Global site tag (gtag.js) - Google Analytics