本文最后更新于:April 14, 2022 pm
积土成山,风雨兴焉;积水成渊,蛟龙生焉;积善成德,而神明自得,圣心备焉。故不积跬步,无以至千里,不积小流无以成江海。齐骥一跃,不能十步,驽马十驾,功不在舍。面对悬崖峭壁,一百年也看不出一条裂缝来,但用斧凿,能进一寸进一寸,能进一尺进一尺,不断积累,飞跃必来,突破随之。
目录
有一些在 《JAVA反射-(一)快速了解反射的一些作用 》 中已经写过,这里就不再重复写了。
类
类中包括四种权限修饰的属性和四种权限修饰的方法。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
| @AllArgsConstructor @NoArgsConstructor @Data @ToString class Man{ public String Manname; protected int Manage; String Manjob; private double Manmoney;
public void ManshowPub(){ System.out.println("Man public方法"); } protected void ManshowPro(){ System.out.println("Man protected方法"); } void ManshowDef(){ System.out.println("Man 默认权限方法"); } private void ManshowPri(){ System.out.println("Man private方法"); } }
@AllArgsConstructor @NoArgsConstructor @Data @ToString class User extends Man{ public String name; protected int age; String job; private double money;
public void showPub(){ System.out.println("public方法"); } protected void showPro(){ System.out.println("protected方法"); } void showDef(){ System.out.println("默认权限方法"); } private void showPri(){ System.out.println("private方法"); }
}
|
获取所有public修饰的属性
包括本类以及父类。
| public class AnnoTest01 { @SuppressWarnings("all") public static void main(String[] args) throws Exception { Class cs = Class.forName("com.annotationStu.User");
Field[] fields = cs.getFields(); for(Field it: fields){ System.out.println(it.getName()); }
} }
|
获取本类所有属性
获取任何修饰符修饰的属性。而且只是本类中的。
| public class AnnoTest01 { @SuppressWarnings("all") public static void main(String[] args) throws Exception { Class cs = Class.forName("com.annotationStu.User");
Field[] declaredFields = cs.getDeclaredFields(); for(Field it: declaredFields){ System.out.println(it.getName()); }
} }
|
获取所有public修饰的方法
包括本类以及父类。还包括了setter、getter等方法。
| public class AnnoTest01 { @SuppressWarnings("all") public static void main(String[] args) throws Exception { Class cs = Class.forName("com.annotationStu.User");
Method[] methods = cs.getMethods(); for(Method it: methods){ System.out.println(it.getName()); }
} }
|
获取本类所有方法
获取任何修饰符修饰的方法。而且只是本类中的。
| public class AnnoTest01 { @SuppressWarnings("all") public static void main(String[] args) throws Exception { Class cs = Class.forName("com.annotationStu.User");
Method[] methods = cs.getDeclaredMethods(); for(Method it: methods){ System.out.println(it.getName()); }
} }
|
获取所有public修饰的构造器
| public class AnnoTest01 { @SuppressWarnings("all") public static void main(String[] args) throws Exception { Class cs = Class.forName("com.annotationStu.User");
Constructor[] constructors = cs.getConstructors(); for(Constructor it: constructors){ System.out.println(it.getName()); }
} }
|
获取本类所有构造器
| public class AnnoTest01 { @SuppressWarnings("all") public static void main(String[] args) throws Exception { Class cs = Class.forName("com.annotationStu.User");
Constructor[] constructors = cs.getDeclaredConstructors(); for(Constructor it: constructors){ System.out.println(it.getName()); }
} }
|
获取父类Class
| public class AnnoTest01 { @SuppressWarnings("all") public static void main(String[] args) throws Exception { Class cs = Class.forName("com.annotationStu.User");
Class superclass = cs.getSuperclass(); System.out.println(superclass);
} }
|