Discuss / Java / 打卡

打卡

Topic source

package com.itranswarp.learnjava;

import java.lang.reflect.Field;

/**

 * Learn Java from https://www.liaoxuefeng.com/

 * 

 * @author liaoxuefeng

 */

public class Main {

public static void main(String[] args) throws Exception {

String name = "Xiao Ming";

int age = 20;

Person p = new Person();

// TODO: 利用反射调用setName和setAge方法:

Class cls=p.getClass();

System.out.println(p.getName()); // "Xiao Ming"

System.out.println(p.getAge()); // 20

Field fName=cls.getDeclaredField("name");

fName.setAccessible(true);

fName.set(p,name);

//age

Field fAge=cls.getDeclaredField("age");

fAge.setAccessible(true);

fAge.set(p,age);

System.out.println(p.getName()); // "Xiao Ming"

System.out.println(p.getAge()); // 20

}

}


  • 1

Reply