一、类加载器
1,什么是类加载器?
类加载器就是用来加载字节码文件
2,类加载器的种类有哪些?
1)BootStrap:引导类加载器:加载都是最基础的文件
2)ExtClassLoader:扩展类加载器:加载都是基础的文件
3)AppClassLoader:应用类加载器:三方jar包和自己编写java文件
是按先后顺序排列的
3,怎么获得类加载器?(重点)
ClassLoader 字节码对象.getClassLoader();
//获得Demo的字节码文件的类加载器Class clazz = Demo.class;//获得Demo的字节码对象ClassLoader classLoader = clazz.getClassLoader();//获得类加载器(类加载器主要加载字节码文件)//getResource的参数的路径相对classes(src)String path = classLoader.getResource("beyond/classloader/jdbc.properties").getPath();//获得classes(src)下的任何资源,这里jdbc.properties是在beyond.classloader包下的资源System.out.println(path);
二、注解
1,什么是注解?
注解就是符合一定格式的语法 @xxx
注释:在阅读程序时清楚----给程序员看的
注解:给jvm看的,给机器看的
注解在目前而言最主流的应用:代替配置文件
注解优点:开发效率高 成本低
注解缺点:耦合性大 并且不利于后期维护
2,jdk5提供的注解
@Override:告知编译器此方法是覆盖父类的
@Deprecated:标注过时
@SuppressWarnings:压制警告
@SuppressWarnings(“all”) 压制所有警告
发现的问题:
不同的注解只能在不同的位置使用(方法上、字段上、类上)