创建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();

}

```




目录
相关文章
|
6天前
|
存储 Java 编译器
类、对象、方法
摘要: 本文介绍了面向对象编程的概念,以京东购买手机为例,展示了如何通过分类和参数选择商品,强调软件与现实生活的对应关系。柯南三步走揭示了京东如何通过搜索和筛选帮助用户找到所需商品,而这一切背后的编程思想即为面向对象编程。面向对象编程涉及抽象、自定义类型和实例化对象等步骤,其中自定义类型(如Java中的类)用于封装现实生活中的复杂数据。文章还讲解了如何定义类、实例化对象以及访问权限修饰符、构造方法、this关键字、方法的使用,强调了方法参数和返回值在不同数据类型上的处理差异。整个讨论旨在阐明Java中面向对象编程的基本原理和实践应用。
19 5
|
6天前
|
Java
获取 Class 对象
获取 Class 对象
10 1
|
设计模式 Python
我为什么要创建一个不能被实例化的类
我为什么要创建一个不能被实例化的类
43 0
|
Python
5 类的创建及使用
5 类的创建及使用
108 0
|
Java 开发者
Class 类对象的三种实例化模式|学习笔记
快速学习 Class 类对象的三种实例化模式
122 0
Class 类对象的三种实例化模式|学习笔记
|
JavaScript 前端开发 开发者
class-创建类并通过 constructor 挂载实例属性|学习笔记
快速学习 class-创建类并通过 constructor 挂载实例属性
199 0
|
应用服务中间件 Python
|
JavaScript 前端开发
class-创建类并通过constructor挂载实例属性
一、Class的基本使用 二、使用class关键字来创建对象 三、总结
|
安全
获取Class对象的其他方式
获取Class对象的其他方式
72 0
|
Java 开发者
Class 类对象的三种实例化模式|学习笔记
快速学习 Class 类对象的三种实例化模式
393 0
 Class  类对象的三种实例化模式|学习笔记