`

Java反射三 动态创建数组

    博客分类:
  • Java
 
阅读更多
package fanshe;

import java.lang.reflect.Array;
import java.lang.reflect.Field;
import java.lang.reflect.Method;

public class Mymain {
	
	public static void main(String[] args) throws Exception{
		Mymain.createArray();
	}
	public static void createArray(){
		Object array = Array.newInstance(String.class, 3, 4, 5); //创建一个三维的String数组
		Object array2 = Array.get(array, 2); //获取三维数组的index=2元素,这个元素是个二维数组
		Array.set(array2, 2, new String[]{"Peter","Zhou"});//给这个二维数组赋值
		Object array2_3 = Array.get(array2, 3);//获取二维数组array2的第index=3元素,这个元素是个一维数组
		Array.set(array2_3, 4, "Min");//给一维数组array2_3的第index=4元素赋值
		
		String[][][]  cast = (String[][][])array;
		System.out.println(cast[2][2][0]);
		System.out.println(cast[2][2][1]);
		System.out.println(cast[2][3][4]);
	}
}


运行结果:
Peter
Zhou
Min
分享到:
评论

相关推荐

    java 反射中操作数组

    总结来说,Java反射提供了对数组的动态操作能力,包括创建数组、设置和获取数组元素、以及处理类中声明的数组字段。这种能力使得代码更加灵活,但也增加了潜在的错误风险,因此在使用时应谨慎并充分测试。

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

    总的来说,理解和掌握如何使用Java反射调用接收数组参数的方法,将有助于提升你在面对复杂编程问题时的灵活性和应变能力。通过实践和不断学习,你可以更熟练地运用反射技术,从而在编程中实现更多可能性。

    java反射全解(反射原理+反射API详解+反射与数组+反射与泛型+反射源码与性能开销+反射优缺点+反射与内省)

    数组是 Java 语言中的一种基本数据结构,反射机制可以动态地获取数组的信息和调用数组的方法。 反射与泛型是指在反射机制中如何操作泛型。泛型是 Java 语言中的一种类型参数机制,反射机制可以动态地获取泛型的信息...

    java反射-英文版反射规范

    例如,在Spring框架中,反射被用来动态创建对象和调用方法;在Hibernate等ORM框架中,反射用于处理数据库记录与Java对象之间的映射关系。 #### 三、反射模型 Java反射的核心模型由以下几个部分组成: ##### 1. **...

    java反射机制学习(四):通过反射执行方法、操作属性、操作数组中的数据

    Java反射机制是Java编程语言中一个强大的特性,它允许运行时动态地获取类的信息并进行操作,如创建对象、调用方法、访问属性以及处理数组等。在本篇讲解中,我们将深入理解如何通过反射来执行方法、操作属性以及处理...

    java反射经典实例

    Java反射是Java编程语言中的一个强大特性,它允许运行中的Java程序对自身进行检查并且可以直接操作程序的内部属性。在本“Java反射经典实例”中,我们将深入探讨这个主题,了解如何利用反射来访问和修改私有属性以及...

    用BeanShell来运行java脚本

    BeanShell还具有对Java反射的支持,可以方便地操作对象、方法和字段,这在处理复杂的程序逻辑时非常有帮助。 描述中提到的博客链接可能包含了一个具体的示例或教程,讲解如何在实际项目中集成和使用BeanShell。通常...

    java反射机制PPT

    5. `Array`类:提供了一些静态方法,用于动态创建数组以及访问和修改数组元素。 在实际开发中,反射机制常用于以下场景: - **插件化开发**:允许在运行时加载未知类,实现模块化和插件化的系统。 - **框架设计**...

    JAVA 反射机制与动态代理ppt

    总的来说,Java反射机制和动态代理是Java平台强大而灵活的特性,它们使得Java程序能够在运行时具有更高的灵活性和可扩展性。然而,使用反射也可能带来性能开销和安全风险,因此在实际应用中需要权衡利弊,合理使用。

    Java反射常用机制

    2. **创建对象**:反射提供了一种在运行时动态创建对象的方式。通过`Class`对象的`newInstance()`方法,我们可以创建任意类的实例,前提是没有参数的构造器。 3. **访问成员变量**:反射可以让我们在运行时获取并...

    java反射.pdf

    反射提供了动态创建对象的能力,这对于在运行时根据用户输入或配置信息创建不同类型的对象非常有用。 1. **创建反射类**: - 获取到类的`Class`对象后,可以通过`newInstance()`方法创建该类的新实例。 - 如果类...

    Java方法反射调用demo

    Java反射是Java编程语言中的一个强大特性,它允许在运行时检查类、接口、字段和方法的信息,并且能够在运行时动态地创建对象和调用方法。这个特性使得Java具有了高度的灵活性,常用于框架开发、插件系统、元编程等...

    Java反射机制与动态代理

    5. `Array`类:提供了一些静态方法,用于动态创建数组和操作数组元素。 在Java中,动态代理是一种利用反射机制实现的编程技术,主要用于在运行时创建一个代理类,这个代理类可以代表并增强原始目标类的行为。Java的...

    Java深度历险(七)——Java反射与动态代理.pdf

    在"Java深度历险(七)——Java反射与动态代理"中,我们探讨了如何利用反射API获取类的运行时信息以及如何动态地执行类的操作。 首先,反射API的核心是`java.lang.Class`类,它代表了Java程序中的每一个类型。通过`...

    Java反射及动态代理

    动态代理是Java提供的一种在运行时动态创建代理类和代理对象的技术,主要用于实现AOP(面向切面编程)和事件监听等场景。代理模式允许我们创建一个代理类,该类在调用实际目标对象的方法之前和之后可以执行额外的...

    圣思园 reflection(Java反射) 课件

    5. **Array类**:提供了一组静态方法,用于创建数组和访问数组的元素。 在Java反射API中,`Class.forName()`方法用于在运行时根据类名加载类;`getDeclaredFields()`, `getDeclaredMethods()`, `...

    java反射机制应用

    #### 三、Java反射机制在实际项目中的应用 ##### 1. 表单数据填充 在Web开发中,表单提交的数据通常需要填充到对应的实体类中。使用反射可以实现这一功能: - 使用`Class.forName()`加载表单对应的实体类。 - 使用...

    Java反射机制笔记(简单易懂)

    通过Java反射机制,我们可以在运行时获取类的信息,包括类的成员变量、方法、构造方法等,并可以动态地调用这些成员变量和方法。 获取Class对象 ---------------- 在Java中,Class对象是反射机制的基础。我们可以...

    java反射机制

    - `Array`类:提供了动态创建和访问Java数组的方法。 - `Constructor`类:提供类构造函数的信息和访问构造函数的接口。 - `Field`类:提供类字段的信息和访问字段的接口。 - `Method`类:提供类方法的信息和访问...

    java反射与泛型综合例子

    Java反射和泛型是Java编程中的两个重要特性,它们各自为开发者提供了强大的功能,并且在特定情况下可以相互结合使用。本文将深入探讨这两个概念,并通过一个具体的`Testrefl.java`示例来阐述它们的应用。 Java反射...

Global site tag (gtag.js) - Google Analytics