Java查看类的成员

  本文由广州疯狂软件java培训分享:

  在一个类的内部,一般包括以下几类成员:成员变量、构造方法、普通方法和内部类等。使用反射机制可以在无法查看源代码的情况下查看类的成员。编写程序,使用反射机制查看ArrayList类中定义的成员变量、构造方法和普通方法。

  思路分析:这个ArrayList类不是自己定义的,就是Java里面的java.util.ArrayList类。

  代码如下:

  import java.lang.reflect.Constructor;

  import java.lang.reflect.Field;

  import java.lang.reflect.Method;

  public class ClassViewer {

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

  Class clazz = Class.forName("java.util.ArrayList");

  System.out.println("类的标准名称:" + clazz.getCanonicalName());

  Constructor[] constructors = clazz.getConstructors();// 获得该类对象的所有构造方法

  System.out.println("类的构造方法:");

  if (constructors.length != 0) {

  for (Constructor constructor : constructors) {

  System.out.println(" " + constructor);// 输出构造方法

  }

  } else {

  System.out.println(" 空");

  }

  Field[] fields = clazz.getDeclaredFields();// 获得该类对象的所有非继承域

  System.out.println("类的非继承域变量:");

  if (fields.length != 0) {

  for (Field field : fields) {

  System.out.println(" " + field);// 输出非继承域

  }

  } else {

  System.out.println(" 空");

  }

  Method[] methods = clazz.getDeclaredMethods();// 获得该类对象的所有非继承方法

  System.out.println("类的非继承方法:");

  if (methods.length != 0) {

  for (Method method : methods) {

  System.out.println(method);// 输出非继承方法

  }

  } else {

  System.out.println(" 空");

  }

  }

  }

  疯狂软件教育中心依托开发团队的强大技术实力,把企业最新技术融入实训课程,打造金牌的品质,才能给予学员黄金的未来,疯狂软件凭借过硬的技术实力与丰富的项目开发经验,赢得了社会的肯定。疯狂软件Java培训师资力量强大,课程内容深入,为学员高薪就业做了很好的铺垫,拥有丰富就业指导经验的就业团队也成为了学员高薪就业的先天优势。地址:广州天河区车陂沣宏大厦3楼。

原文地址:https://www.cnblogs.com/gojava/p/3632503.html