
正文
从java代码获取类名,java获取类的所有属性
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java怎么获得类名
clazz : classes) { System.out.println(clazz.getName()); //输出test.Test$A、test.Test$B,要获得后面的类名A,自己做一下字符串的截取就行了。
不创建实例?这个要求太奇怪了。也许只有jvm知道吧。
获取属性和构造等,可以参考 JavaApi 的调用,类. getDeclaredFields,类. getConstructor(..)等。
String packageName = A.class.getPackage().getName();或者:packageName = new A().getClass().getPackeage().getName();即可获得包名了。
相关问答
Q1: java里this.getClass().getName()起什么作用
getClass() 是Object的方法,所有类都是Object的子类所以不需要定义。getClass() 返回类型 java.lang.Class 在Class类中定义了getName()方法,返回类型为字符串。
a.getClass();将返回a对象的信息描述,当然这些信息都是动态的,比如a对象的某个属性有什么值阿等等,你可以在程序运行时通过写代码动态的获得这些信息。getClass().getName()是用来返回Class对象所代表的具体对象的名称。
getName public String getName()以 String 的形式返回此 Class 对象所表示的实体(类、接口、数组类、基本类型或 void)名称。
Q2: Java如何得到类名
java中子类可以获取父类,是因为java语言规范强制要求所有非object类必须有父类,类在编译的时候,父类唯一确定,编译器会将父类的引用记录在class文件里面。反过来,编译器不会给你记录子类,想要获取,只能自己根据情况实现。
不创建实例?这个要求太奇怪了。也许只有jvm知道吧。
这里要说明一下,super和this的区别,this表示当前对象的指针(或叫引用),super是一个java关键字,用于访问父类的成员和方法。
manwu91 采纳率:65% 来自团队:JAVA时空 擅长: 常见软件 JAVA相关 其他回答 你说的根据一个字符串要得到一个类,在Java中只能使用反射机制了。反射机制很有趣的,猪名的框架spring就是大量用的反射。
检查程序是否有main()方法 如果程序中没有定义main()方法,或者main()方法的格式不正确,则无法作为Java程序的主类执行。需要确保程序中存在public static void main(String[] args)方法,并且格式正确。
String packageName = A.class.getPackage().getName();或者:packageName = new A().getClass().getPackeage().getName();即可获得包名了。
关于从java代码获取类名和java获取类的所有属性的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。






