创建Class类的实例对象的三种方法

简介: 创建Class类的实例对象的三种方法


```javascript

Fool fool =new Fool();

```



Class 类里面提供的构造方法是private的,且

只有java虚拟机能创建Class的实例对象,

所以不能直接创建他的对象。

任何类都是Class类的实例对象,这个实例对象有3种表示方法:


```javascript

方法一:

Class c1=Fool.class;//任何一个类都有一个隐含的静态成员变量class

```


```javascript

方法二:

Class c2=fool.getClass();//已知该类的对象通过getClass方法

```


c1、c2表示Fool类的类类型

类也是对象,是Class类的实例对象

这个对象我们称为该类的类类型

System.out.print(c1==c2);结果为true,即表示他们是同一个实例对象。

解释:不管c1与c2都代表了Foo类的类类型,一个类只可能是Class类的一个实例对象


```javascript

方法三:

Class c3=null;

try{

   c3=Class.forname("com.imooc.reflect.Foo");

}catch(ClassNotFoundException e){

   e.printStackTrace();

}

```


总结:我们完全可以通过类的类类型创建类的对象实例--->通过c1或者c2或者c3创建Foo的实例


```javascript

try{

   Foo foo=(Foo)c1.newInstance();

}catch(InstantiationException  e)

{

   e.printStackTrace();

}catch(IllegalAccessException e){

   e.printStackTrace();

}

```




目录
相关文章
|
SQL 存储 关系型数据库
数据库开发之图形化工具以及表操作的详细解析
数据库开发之图形化工具以及表操作的详细解析
364 0
120Echarts - 热力图(Calendar Heatmap Vertical)
120Echarts - 热力图(Calendar Heatmap Vertical)
182 0
|
easyexcel Java
SpringBoot集成EasyExcel的使用
SpringBoot集成EasyExcel的使用
1774 0
|
编解码 数据可视化
关于DataV大屏分辨率那些事
关于DataV如何选择合适分辨率的问题,实践中经常遇到一些疑惑。故写此文进行澄清,希望能够帮助各位朋友合理的选择适合自己业务场景的分辨率。
2846 0
|
供应链 前端开发 JavaScript
《Solidity 简易速速上手小册》第10章:区块链项目实战(2024 最新版)(上)
《Solidity 简易速速上手小册》第10章:区块链项目实战(2024 最新版)
512 0
|
9月前
|
JSON Java fastjson
微服务——SpringBoot使用归纳——Spring Boot返回Json数据及数据封装——使用 fastJson 处理 null
本文介绍如何使用 fastJson 处理 null 值。与 Jackson 不同,fastJson 需要通过继承 `WebMvcConfigurationSupport` 类并覆盖 `configureMessageConverters` 方法来配置 null 值的处理方式。例如,可将 String 类型的 null 转为 "",Number 类型的 null 转为 0,避免循环引用等。代码示例展示了具体实现步骤,包括引入相关依赖、设置序列化特性及解决中文乱码问题。
483 0
|
测试技术 Python
自动化测试项目学习笔记(一):unittest简单运行(初始化,清除,设置测试行为)
本文介绍了Python的unittest框架的基础用法,包括测试初始化(setup)、清除(tearDown)函数的使用,以及assertEqual和assertGreaterEqual等断言方法,并展示了如何创建测试用例,强调了测试函数需以test_开头才能被运行。
240 1
自动化测试项目学习笔记(一):unittest简单运行(初始化,清除,设置测试行为)
|
前端开发 JavaScript
开发过程找不到css源文件?试试配置vite的css源文件映射
【8月更文挑战第3天】开发过程找不到css源文件?试试配置vite的css源文件映射
372 0
开发过程找不到css源文件?试试配置vite的css源文件映射
|
数据挖掘 Python
Pandas实战(3):电商购物用户行为数据分析
Pandas实战(3):电商购物用户行为数据分析
392 1
|
Oracle Java 关系型数据库
超详细图解!基于IDEA+Gradle+jdk11搭建Spring框架源码阅读环境
超详细图解!基于IDEA+Gradle+jdk11搭建Spring框架源码阅读环境
超详细图解!基于IDEA+Gradle+jdk11搭建Spring框架源码阅读环境