泛型
泛型是什么?
将某一个类/变量/接口/方法的数据类型像传递参数一样传递。
方法传递参数传递的是具体数据值
泛型传递的是具体的数据类型
为什么需要泛型?
少写业务逻辑相同数据类型不同的类,接口,方法。
怎么使用泛型?
创建类的class关键字后面加"<>" "<>"里面放入一个大写字母做为数据类型的占位符
注解 (@就是注解的标识)
注解是什么?
一段有功能的java代码
三个最常见注解?
@Override
检测重写方法是否正确
@Deprecated 作用在类 方法 变量
表示该类 方法 变量 已过时,不建议使用
@SuppressWarnings
抑制警告信息
【当前代码上该注解只能抑制当前代码】
【当前方法上该注解只能抑制该方法内部的代码】
【当前类上该注解只能抑制该类内部的代码】
格式:
@SuppressWarnings( { "警告信息1","警告信息2",... } )
反射
反射是什么?
在程序运行过程中,动态的获取信息的过程
反射的应用?
1.jdbc动态加载数据库驱动
2.servlet中配置web.xml中的路劲映射
3.spring等框架
反射对象和实例对象?
实例对象:通过new创建的对象
实例对象得到反射对象?
类名.class 对象.getClass() Class.forName("包名+类名")
反射对象:通过反射机制得到的对象
反射常用api?
Class<? super T> getSuperClass()
Class<?>[] getInterfaces() 【得到接口反射对象数组】
Constructor<?>[] getConstructors() 【返回Constructor对象数组】
Package getPackage() 【返回包对象】
Field[] getDeclaredFields() 【返回成员变量对象数组】
Method[] getDeclaredMethods() 【返回成员方法对象数组】
String getName()
Class getType() 【返回数据类型对象】
Class getReturnType() 【返回返回值类型对象】
Class[] getParamsType()【返回方法参数类型对象】
int getModifiers() + Modifier类的toString(int)方法 【返回权限修饰符的名字】