关键词搜索

源码搜索 ×
×

一篇文章带你搞定 Java中 类名.class 的含义

发布2020-02-21浏览5037次

详情内容

关于 Class 类的学习

其实任何一个类,都会有一个Class对象于这个类对应,在这个Class对象中,保存着实例化该类时所需要的基本信息,A.class 其实返回的是一个类 A 的 Class 对象,贴一个小代码演示一下:

public class Test {
	public static void main(String[] args) {
		// 得到类名(不包含包名)
		System.out.println(String.class.getSimpleName());// String
		// 得到类的全名称(包含所在的包名)
		System.out.println(String.class.getName());// java.lang.String
		System.out.println(Test.class.getName());// Test
	}
}

    获取Calss对象的方式主要有三种

    第一种:通过Class.forName(“类的全名称”)获取,用这个方法,最常见的应该是应用于JDBC注册驱动的时候用到的

    第二种:通过已经实例化的对象获取,getClass()方法获取

    第三种:通过类名.class获取

    实例:

    package org.lxh.test;
    class X{
    }
    public class GetClassDemo {
        public static void main(String[] args) {
           Class<?> c1 = null;//指定泛型
           Class<?> c2 = null;//指定泛型
           Class<?> c3 = null;//指定泛型
            try{
                c1 = Class.forName("org.lxh.test.X");//第一种:最常用的形式
            }catch (ClassNotFoundException e){
                e.printStackTrace();
            }
            c2 = new X().getClass();//第二种:通过 Object 类中方法实例
            c3 = X.class;//第三种:通过类.class实例化
            System.out.println("类名称:" + c1.getName());//得到类的名称
            System.out.println("类名称:" + c2.getName());
            System.out.println("类名称:" + c3.getName());
        }
    }
    
      10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    单独的类.class 表示的是这个类或者接口类:

    在这里插入图片描述

    参考:

    【1】https://blog.csdn.net/u012453619/article/details/38638313?utm_source=tuicool&utm_medium=referral
    【2】https://blog.csdn.net/nanhuaibeian/article/details/104402854

    相关技术文章

    点击QQ咨询
    开通会员
    返回顶部
    ×
    微信扫码支付
    微信扫码支付
    确定支付下载
    请使用微信描二维码支付
    ×

    提示信息

    ×

    选择支付方式

    • 微信支付
    • 支付宝付款
    确定支付下载