zoukankan      html  css  js  c++  java
  • EKT相关知识(Class类对象的方法补充)

        |    class类对象的方法补充     |

    一.获得Class类的对象的四种方式:

    1.getClass

    2.  .class

    3.   Class.forName()

    4.   Class.ClassLoader.getSystem....

    二.Class类的相关方法:

    1.cast(Object obj)         将一个对象强制转换成此 Class 对象所表示的类或接口。

    2 .getAnnotations()          返回此元素上存在的所有注释。

    3.getCanonicalName()      返回 Java Language Specification 中所定义的底层类的规范化名称。

    4.getClasses()          返回一个包含某些 Class 对象的数组,这些对象表示属于此 Class 对象所表示的类的成员的所有公共类和接口。

    5.constructor相关方法:(1)boolean equals(Object obj)      将此 Constructor 对象与指定的对象进行比较

                (2)getName()     以字符串形式返回此构造方法的名称。

    方法运用的代码展示:

    注意事项:a.代码运行环境:jdk1.8.0_131                   b.编译工具:2018 Idea

    源代码:

    package com.liujie;
    
    import java.lang.annotation.Annotation;
    import java.lang.reflect.Constructor;
    
    /*
     * Class中相关方法运用
     * */
    public class zyTest {
    
        public static void main(String[] args) {
            //cast(Object obj)
            //          将一个对象强制转换成此 Class 对象所表示的类或接口。
            String a=new String("hello");
            Class clz=a.getClass();
            Object aa="fasfds";
            Object ob=clz.cast(aa);
            System.out.println(ob.getClass());
    
            //getAnnotations()
            //          返回此元素上存在的所有注释。
            Annotation[] arr=zyTest.class.getAnnotations();
            for (Annotation annotation : arr) {
                System.out.println(arr);
            }
            //getCanonicalName()
            //          返回 Java Language Specification 中所定义的底层类的规范化名称。
            String cname=clz.getCanonicalName();
            System.out.println("cname:"+cname);
    
            //getClasses()
            //          返回一个包含某些 Class 对象的数组,这些对象表示属于此 Class 对象所表示的类的成员的所有公共类和接口。
            Class[] clzss=clz.getClasses();
            for (Class aClass : clzss) {
                System.out.println(aClass);
            }
    
            //constructor相关方法
            Constructor constructor=null;
            try {
                constructor=String.class.getDeclaredConstructor(String.class);
                System.out.println("constructor:"+constructor);
            } catch (NoSuchMethodException e) {
                e.printStackTrace();
            }
                //boolean equals(Object obj)
                //          将此 Constructor 对象与指定的对象进行比较。
            Boolean isequals=constructor.equals("String");
            System.out.println(isequals);
            //getName()
            //          以字符串形式返回此构造方法的名称。
            String ccname=constructor.getName();
            System.out.println(ccname);
        }
    }

    控制台结果:

    总结:

       不积跬步无以至千里,不积小流无以成江海。不断的学习才能提高我们的认知境界,才能更恰当匹配好我们支配金钱的欲望

     

    
    
  • 相关阅读:
    1.LOAM安装
    查看memcached运行状态
    (转)服务器故障排查,侵删
    百度地图tilesloaded只触发一次
    Linux 安装NVIDIA显卡
    Oracle常用sql(持续更新)
    jetBrain idea 常用插件整理
    关于swiper4 一个页面多个轮播的问题
    linux 日常工作常用软件(持续更新)
    WPS for Linux ,Linux平台最好的文档编辑软件,没有之一
  • 原文地址:https://www.cnblogs.com/xiaojieDeam/p/13555753.html
Copyright © 2011-2022 走看看