zoukankan      html  css  js  c++  java
  • Java关键技术强化:类加载器之Class类的作用(1)(day03)

    一、Class类

    •   Class对象由JVM自动产生,每当一个类被加载时,JVM就自动为其生成一个Class对象,通过Class对象可以获得类的相关信息。
    •   将类信息读到内存中过程,称为类加载

    二、获得Class对象

      获得类的基本信息的常用方法:

           getName():获得类名

           getPackage():获得包名

           isInterface():是否为接口

           isPrimitive():是否为基本类型

           isArray():是否为数组

           getSuperclass():获得父类的Class对象

      1、分别使用getClass()和class属性,来简单的获取String类的Class对象,并从中获得一些相关信息?

    范例(代码):

     1 package demo01;
     2 
     3 public class Demo01 {
     4     /*
     5     * @param args
     6     * */
     7     public static void main(String[] args) {
     8         String s = new String("hello");
     9 
    10         //1、getClass()
    11         Class clz = s.getClass();
    12         System.out.println("类名:"+clz.getName());
    13         System.out.println("包名:"+clz.getPackage());
    14         System.out.println("是否为接口:"+clz.isInterface());
    15         System.out.println("是否为基本类型:"+clz.isPrimitive());
    16         System.out.println("是否为数组:"+clz.isArray());
    17         System.out.println("String类的父类:"+clz.getSuperclass());
    18 
    19         //2、class
    20         Class clz1 = String.class;
    21         System.out.println("类名:"+clz1.getName());
    22         System.out.println("包名:"+clz1.getPackage());
    23         System.out.println("是否为接口:"+clz1.isInterface());
    24         System.out.println("是否为基本类型:"+clz1.isPrimitive());
    25         System.out.println("是否为数组:"+clz1.isArray());
    26         System.out.println("String类的父类:"+clz1.getSuperclass());
    27 
    28         System.out.println(clz == clz1);
    29 
    30         //得出结论:
    31         //a.一个类的类对象是唯一的
    32         //b.如果已知对象的实例,可以通过getClass()得到类对象
    33         //C.如果已知类型,可以通过class得到类对象
    34     }
    35 }

          2、对于基本类型有没有Class对象呢?怎么获取?

    范例(代码):

    int a = 100;
    System.out.println(int.class);

    三、总结

      这次为大家讲解了有关Class类的作用,下一节为大家讲解类加载器的作用,日拱一卒,不期速成。

  • 相关阅读:
    教你一招用 IDE 编程提升效率的骚操作!
    动态拼接sql语句工具类
    mysql数据建模规范
    分割字符串为数字列表
    linux 配置mysql odbc
    nodejs npm常用命令
    (四)jquery easyui panel window使用
    (三)jquery easyui常用form控件的使用
    (二)jquery easyUI提示框的使用
    (一)jQuery easyUI 环境的搭建
  • 原文地址:https://www.cnblogs.com/cmf12/p/13537401.html
Copyright © 2011-2022 走看看