`

Java反射机制实现 toString() 方法

    博客分类:
  • Java
阅读更多
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;


public class TestReflection {



public static void main(String[] args){

User user = new User();
user.setUserName("ZhangSan");
user.setPassword("123456");

try {
printObject( user );
} catch (SecurityException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (NoSuchMethodException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}

}



public static void printObject(Object obj) throws SecurityException, NoSuchMethodException, IllegalArgumentException, IllegalAccessException, InvocationTargetException{

Field[] fields = obj.getClass().getDeclaredFields();

for(int i= 0; i<fields.length; i++){
Field f = fields[i];
String fieldName = f.getName();
    String stringLetter = fieldName.substring(0, 1).toUpperCase();   
String getName="get"+stringLetter+fieldName.substring(1);
  
Class classType=obj.getClass();   
  //获取相应的方法   
Method getMethod=classType.getMethod(getName, new Class[]{});    

//调用源对象的getXXX()方法   
Object value=getMethod.invoke(obj, new Object[]{});   
System.out.println(fieldName+": "+value);   

}
}
}


class User{

private String userName;

private String password;

public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}

}
分享到:
评论

相关推荐

    反射实例-JAVA反射机制

    ### 反射实例—JAVA反射机制 #### 一、反射概念及原理 反射在计算机科学领域,特别是程序设计中,是指程序有能力访问、检测和修改其自身的结构和行为。这一概念最早由Smith于1982年提出,并迅速应用于各种编程语言...

    java 反射机制例子

    ### Java反射机制详解 #### 一、反射的基本概念与历史背景 反射的概念最早由Smith在1982年提出,其核心思想是程序有能力访问、检测甚至修改自身的状态和行为。这种能力一经提出,迅速成为了计算机科学领域的研究...

    Java反射机制Demo

    Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制。...

    java反射机制详解

    Java 反射机制的实现主要靠 Java.lang.reflect 包中的类,包括 Class 类、Field 类、Method 类、Constructor 类和 Array 类。这些类提供了获取类的信息、构造对象、判断成员变量和方法、调用方法等功能。 在 Java ...

    java的反射机制及其实际应用

    ### Java的反射机制及其实际应用 #### 一、引言 ...总之,Java反射机制是一项强大的工具,它能够在运行时动态地获取和操作类的信息。然而,应该谨慎使用反射,避免滥用造成不必要的性能损失或安全风险。

    Java中的反射机制

    Java反射机制允许运行中的程序检查自身,并能直接操作程序的内部属性。这是其他许多编程语言(如Pascal、C或C++)不具备的能力。 **1.1 Reflection的工作机制** 为了展示反射如何工作,我们来看一个简单的例子: ...

    Java反射机制学习总结

    Java反射机制可以获取类、方法或字段的修饰符信息。使用`Field`、`Method`或`Constructor`对象的`getModifiers()`方法获取整型修饰符,然后通过`Modifier`类的静态方法`toString()`将整型修饰符转换为字符串形式,...

    java反射机制简介

    ### Java反射机制简介 #### 一、什么是Java反射机制? Java反射机制是Java语言提供的一种在运行时访问类和对象信息的能力。通过反射,我们可以在程序运行时动态地获取类的信息(如类名、方法、构造函数等)并操作...

    JAVA反射机制

    ### JAVA反射机制详解 #### 一、JAVA反射机制概述 **反射**是在1982年由Smith首次提出的概念,指的是程序有能力访问、检测并修改其自身的状态或行为。这一概念一经提出,便迅速引起了计算机科学领域的关注,并在多...

    java反射机制介绍及使用

    Java反射机制是Java语言提供的一种强大的工具,它允许程序在运行时动态地访问和修改类的行为。这种机制的核心在于能够获取类的元数据信息,并基于这些信息实例化对象、调用方法、访问和修改字段的值,从而实现高度的...

    JAVA反射机制详解

    Java反射机制是在运行时动态获取类的信息,并且能够调用对象方法的一种强大的功能。通过Java反射机制,可以在运行时完成以下任务: - 判断任意一个对象所属的类; - 构造任意一个类的对象; - 获取任意一个类所具有...

    java反射机制与动态代理

    Java反射机制主要是通过以下几个核心类来实现的,这些类都位于`java.lang.reflect`包中: 1. **`Class`类**:表示一个类,是反射机制的基础。通过它可以获取类的各种信息,如类名、超类、接口、字段、方法等。 2. *...

    java的反射机制

    Java反射机制是Java语言提供的一种能在运行时分析和操作类、对象、方法等的能力。它使得开发人员可以在程序运行过程中动态地获取类的信息(例如类名、字段、方法等),并且能够动态地创建和操作对象。这种能力为Java...

    java反射实现javabean转json实例代码.docx

    ### Java反射机制实现JavaBean转JSON的详细解析 #### 一、引言 在现代软件开发过程中,数据格式转换是一项非常常见的任务。特别是在处理不同系统之间的数据交换时,JSON(JavaScript Object Notation)因其轻量级...

    Java反射机制2

    Java反射机制是Java编程语言中的一个强大工具,它允许程序在运行时检查和操作类、接口、对象等的内部信息,包括但不限于类名、方法名、构造器、字段以及它们的元数据。这个机制的核心在于Java.lang.Class类和java....

Global site tag (gtag.js) - Google Analytics