zoukankan      html  css  js  c++  java
  • java内省

    参考连接:https://blog.csdn.net/qiaolovemath/article/details/50454400?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-5&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-5

    package com.siyuan.jdktest;
    
    import java.beans.BeanDescriptor;
    import java.beans.BeanInfo;
    import java.beans.IntrospectionException;
    import java.beans.Introspector;
    import java.beans.MethodDescriptor;
    import java.beans.PropertyDescriptor;
    import java.lang.reflect.Method;
    
    class Person {
     
     private String name;
     
     private int age;
    
     
     public int getAge() {
      return age;
     }
    
     
     public void setAge(int age) {
      this.age = age;
     }
    
     
     public String getName() {
      return name;
     }
    
     
     public void setName(String name) {
      this.name = name;
     }
     
    }
    
    public class IntrospectorTest {
    
     
     public static void main(String[] args) throwsIntrospectionException {
      // TODO Auto-generated methodstub
      BeanInfo beanInfo =Introspector.getBeanInfo(Person.class);
      
      System.out.println("BeanDescriptor===========================================");
      BeanDescriptor beanDesc =beanInfo.getBeanDescriptor();
      Class cls =beanDesc.getBeanClass();
      System.out.println(cls.getName());
      
      System.out.println("MethodDescriptor===========================================");
      MethodDescriptor[] methodDescs= beanInfo.getMethodDescriptors();
      for (int i = 0; i< methodDescs.length; i++) {
       Method method= methodDescs[i].getMethod();
       System.out.println(method.getName());
      }
      
      System.out.println("PropertyDescriptor===========================================");
      PropertyDescriptor[] propDescs= beanInfo.getPropertyDescriptors();
      for (int i = 0; i< propDescs.length; i++) {
       MethodmethodR = propDescs[i].getReadMethod();
       if (methodR!= null) {
        System.out.println(methodR.getName());
       }
       MethodmethodW = propDescs[i].getWriteMethod();
       if (methodW!= null) {
        System.out.println(methodW.getName());
       }
      }
     }
    
    }
    
    3. 运行结果
    
     
    
    BeanDescriptor===========================================
    com.siyuan.jdktest.Person
    MethodDescriptor===========================================
    hashCode
    setAge
    equals
    wait
    wait
    notify
    getClass
    toString
    getAge
    notifyAll
    setName
    wait
    getName
    PropertyDescriptor===========================================
    getAge
    setAge
    getClass
    getName
    setName
    

      

  • 相关阅读:
    Lua 数组
    javascript debugger
    Lua 字符串
    警告
    Lua中获取table长度
    Lua 运算符
    Lua 函数
    lua if 流程控制
    pairs 和 ipairs 的区别
    Lua 循环
  • 原文地址:https://www.cnblogs.com/1020182600HENG/p/12632029.html
Copyright © 2011-2022 走看看