package com.cgm.invokeclass;
public class Teacher {
int num=0;
public Teacher(int num){this.num=num;}
public void talk(){
System.out.println("laoshi zai jiang"+num);
}
}
测试类
package com.cgm.invokeclass;
import java.lang.reflect.Method;
public class ProxyDemo {
public static void main(String[] args) throws Exception {
Teacher t1=new Teacher(1);
Teacher t2=new Teacher(2);
Teacher t3=new Teacher(3);
Teacher t4=new Teacher(4);
Method m1=t1.getClass().getMethod("talk");
m1.invoke(t3); // laoshi zai jiang3 反射 谁调用就执行谁的方法
t1.talk();
Class c=Teacher.class;
System.out.println(t1==t2); //false
System.out.println(t1.getClass()==t2.getClass()); // 尽管对象不一样 都是同一个类true
System.out.println(c==t1.getClass()); //尽管对象不一样 都是同一个类true
}
}
分享到:
相关推荐
### Java反射机制简介 Java反射机制是Java编程语言的一个强大特性,它允许程序在运行时检查自身,并且能够“看”到类的信息(字段、方法等),甚至可以在运行时调用这些方法或修改这些字段的值。这为开发带来了很大...
### 反射实例—JAVA反射机制 #### 一、反射概念及原理 反射在计算机科学领域,特别是程序设计中,是指程序有能力访问、检测和修改其自身的结构和行为。这一概念最早由Smith于1982年提出,并迅速应用于各种编程语言...
Java编程语言是世界上最流行的编程语言之一,以其“一次编写,到处运行”的特性闻名。它具有丰富的类库,广泛应用于企业级应用、移动开发(尤其是Android)、大数据处理、云计算等多个领域。对于初学者而言,理解并...
为了理解反射的工作原理,我们可以从一个简单的示例开始。下面的代码展示了如何使用Java反射API来获取一个类的所有方法信息: ```java import java.lang.reflect.*; public class DumpMethods { public static ...
这个简单的反射实例展示了反射在Java中的基本应用,它可以用来实现动态加载类、实例化对象,以及根据需求执行特定的方法。这种灵活性使得反射成为许多高级功能的基础,如插件系统、序列化、动态代理等。然而,需要...
反射的概念最早由Smith于1982年提出,是指程序能够访问、检测和修改其自身状态或行为的能力。这一概念的引入促进了计算机科学领域对反射性的研究,并迅速被应用于程序语言的设计之中。在Lisp语言和面向对象编程中...
以下是对这个“最简单Java反射原理示例”的详细解释。 一、Java反射的概念 Java反射机制允许我们在运行时动态地获取类的信息(如类名、方法名、参数类型等)并调用这些方法。这是通过`java.lang.Class`类和相关API...
以下是一个简单的Java反射示例,展示了如何使用反射来获取类的信息: ```java import java.lang.reflect.*; public class DumpMethods { public static void main(String args[]) { try { Class c = Class.for...
这个教程旨在帮助新手理解并掌握Java编程的基本元素,从而能够独立编写简单的程序。以下是一些主要的知识点: 1. **Java环境配置**:首先,学习Java编程需要安装Java Development Kit (JDK)并设置好环境变量,包括...
对于实例开发部分,我们将通过创建一个简单的Java应用程序来演示如何运用这些知识。例如,开发一个命令行版的待办事项管理器,使用ArrayList存储任务,HashMap存储任务的优先级,以及LinkedList实现任务的排序。这样...
这些实例可能包括简单的类定义、对象创建、方法调用等,以帮助初学者建立对面向对象编程的理解。 其次,会涉及Java的基本语法,如变量声明、数据类型、控制结构(if-else、switch、for、while循环)、函数的使用等...
Java 反射机制简单理解 Java 反射机制是一种强大的机制,它允许程序在运行时检查和修改自身的结构和行为。Java 反射机制简单理解,非常容易理解的 Java 反射机制。 Java 反射机制的主要应用场景有两种:一种是 ...
下面将详细介绍Java反射的基本概念和如何通过一个简单的`ReflectTest`代码示例来理解其工作原理。 首先,了解几个关键的Java反射API类: 1. `Class`:代表Java类的运行时信息。我们可以通过`Class.forName()`或...
##### 2.2 使用反射实例化对象 反射不仅可以用于获取类的信息,还可以用于创建对象。例如,使用`newInstance`方法可以创建类的新实例: ```java Class<?> clazz = Class.forName("java.util.Stack"); Object stack...
13. **反射**:Java的反射机制可以在运行时检查类的信息,动态创建对象和调用方法。 14. **注解(Annotation)**:注解提供了一种元数据的方式,可以用于编译时和运行时的代码处理。 以上只是Java编程的一些基本...
3. `Util.java`是核心的工具类,展示了如何使用反射来创建并操作`Son1`或`Son2`的实例。`convertStr2ServiceBean`方法接收三个参数:bean名称(类名)、字段设置方法名和参数值。首先通过`Class.forName`动态加载...
"15个经典的java课程设计实例"是耿祥义编著的一份宝贵的资源,它提供了丰富的实践项目,涵盖了Java的核心概念和技术。下面,我们将深入探讨这些实例可能涉及的一些关键知识点。 1. **面向对象编程**:Java是一种...
最后,教程可能会涵盖一些高级主题,如I/O流、反射、泛型、枚举、注解和Lambda表达式等,这些都是Java 2及后续版本中引入的增强功能,对于编写更高效、可维护的代码至关重要。 通过Java 2入门与实例教程的学习,你...
Java编程语言作为世界上最受欢迎的编程语言之一,以其跨平台、面向对象的特点深受程序员喜爱。"100个Java编程实例源代码"集合提供了一个全面的学习资源,覆盖了从基础概念到高级特性的广泛主题,旨在帮助初学者和有...
这是最简单的单例实现,通过静态常量在类加载时就初始化单例,保证了线程安全,但同时也意味着即使在未使用到单例时也会被加载。 ```java public class Singleton { private static final Singleton INSTANCE = ...