Java的理解


◆平台无关性
◆GC
◆语言特性

◆面向对象
◆类库
◆异常处理
 

谈谈反射


JAVA反射机制是在运行状态中, 对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。

 

ClassLoader----类加载器

  ClassLoader在Java中有着非常重要的作用,它主要工作在Class装载的加载阶段,其主要作用是从系统外部获得Class二进制数据流。它是Java的核心组件,所有的Class 都是由ClassLoader 进行加载的,ClassLoader负责通过将Class文件里的二进制数据流装载进系统,然后交给Java虚拟机进行连接、初始化等操作

  ClassLoader的种类:
     > BootStrapClassLoader(启动类加载器) : C+ +編写,加載核心庠java.*
     > ExtClassLoader(扩展类加载器) : Java編写,加載折展庠javax.*
     > AppClassLoader(应用程序类加载器) : Java編写,加載程序所在目彖
     > 自定乂ClassLoader(自定义的类加载器): Java編写,定制化加載

    JVM通过双亲委派模型进行类的加载,当然我们也可以通过继承java.lang.ClassLoader实现自定义的类加载器。

    类的加载过程  由上级的加载器加载 层层往上  直到加载器加载不了时  才往下一级的加载器传递  这样保证同一个加载器加载同一个类,比如Object类由启动类加载器加载

 

类的加载方式

 >  隐式加载:new

 >  显式加载:loadClass,forName

 JVM类加载机制分为五个部分:加载,验证,准备,解析,初始化

  loadClass,forName的区别:

    Class.forName得到的class是已经初始化完成的

    Classloader.loadClass得到的class是海没有链接的