JAVA-反射机制-有无Declared的区别

Posted 仙儿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA-反射机制-有无Declared的区别相关的知识,希望对你有一定的参考价值。

JAVA-反射机制-有无Declared的区别

存在declared:表示获取的数据来自此类的所有此种类型的数据,不能获取其父类的

无declared:表示获取的数据来自此类及其父类的公共访问权限的此种类型的数据(只能访问到公共的)

  • Filed

User.class.getFields();//获取User类及其父类中的所有公共属性(只能获取到公有的)

User.class.getDeclaredFields();//获取User类中的任意访问权限的属性,不能获取到其父类的

  • Method

User.class.getdMethods();//获取User类及其父类中的所有公共方法(只能获取到公有的)

User.class.getDeclaredMethods();//获取User类中的任意访问权限的方法,不能获取到其父类的

  • Constructor

User.class.getdConstructors();//获取User类及其父类中的所有公共构造方法(只能获取到公有的)

User.class.getDeclaredConstructors();//获取User类中的任意访问权限的构造方法,不能获取到其父类的

以上是关于JAVA-反射机制-有无Declared的区别的主要内容,如果未能解决你的问题,请参考以下文章

java 中反射机制和内省机制的区别是啥?

理解Java的反射与内省及其区别

Java 反射机制详解

Java--反射机制原理几种Class获取方式及应用场景

java的反射机制之getDeclaredMethods和getMethods的区别

反射机制知识点总结