美文网首页
大连滕泰科技学习笔记2020-06-16

大连滕泰科技学习笔记2020-06-16

作者: RX_AI | 来源:发表于2020-06-16 20:56 被阅读0次

    0 ,知识点:

    -- 0,1 类的加载器
    一个类是如何被加载的?一个类如何被注册到jvm中的?

    解决方案:

    类加载器 ClassLoader 专门负责进行类的加载?
    .class文件,叫做字节码文件
    字节码文件被加载之后,生成类型(注册一个类)

    > 类加载器分为三个大的种类,分别加载那些类?:
        >> Bootstrap 
            >>负责启动jvm(java虚拟机)C或者C++ 加载自己类库
            >> 想要查看类加载器加载那些类,
            >> 方案1:需要配置参数
    

    类的加载器,加载的第一个类:肯定是Object> 方案2:做成jar文件
    >> 扩展加载器 ExtClassLoader
    >> 负责加载jdk中extend这个文件夹下内容
    >> 应用加载器 AppClassLoader
    >> 自己编写的类,被这个
    相当于反射:定义的应用:
    case1:java运行中,任意一个类型,都可以获取到这个类型的属性和方法。
    任意一个类型 :== Class
    -- 反射全部方法
    >> getMethods()
    >>>只能获取到当前类和父类的公开方法,构造方法除外
    >>> 私有方法无法获取到。
    >> getDeclaerMethods()
    >> 获取当前类中所有方法包括这个私有方法
    >> 父类的方法不再显示
    >> getDeclaredConstructors

        >> A类中有一个方法我是知道,我就是获取这个方法,应该如何处理
            >> 思路:获取这个类方法的时候,需要传递一个名称,根据名称                          获取方法
            >> getDeclaredMethod("print", Object.class,String.class,
        
    -- 反射全部的属性
        >> 获取全部的属性
            >> cls.getDeclaredFields();
        >> 根据名称获取字段名称
            >>  cls.getDeclaredField("id"); 根据这个名称获取域对象 
    -- 问题:  
            -- Method
            -- Field
            -- 这两个类你是怎么理解?

    相关文章

      网友评论

          本文标题:大连滕泰科技学习笔记2020-06-16

          本文链接:https://www.haomeiwen.com/subject/snqdxktx.html