关于反射,动态加载,静态加载

本文深入解析Java反射机制,包括.class字节码文件的作用,反射创建对象的步骤,以及静态加载与动态加载的区别。通过实例说明如何利用反射技术动态地创建和操作对象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

.什么叫做反射:反射是一种机制,基于一个类的.class字节码文件,创建这个类的对象的技术。

关于.class文件:

一、java有编译、运行两个阶段。在编译的后,被编译.java文件可以编译出一个.class文件。


class HelloJava{
    public static void main(String[] args){
    }
}
二、这个.class是一个字节码文件,我个人理解为:这一个描述了对应.java文件相关结构的表述文件。如果把.java文件看做一个人,.class文件则描述了这个人的结构(身高,体重,性别……)。
2.传统的创建对象形式很简单:
[java] view plain copy
<code class="language-java">  //假设我们已经拥有一个Person类,通过new Person()方式可以创建一个新的Person对象。</code>  
  Person p=new Person();
而通过反射机制创建对象有如下几个步骤:
   (1)得到类类型

       三种方式:

       Class clazz = Person.class

       -------------------------

       Class clazz=p.getClass();

       -----------------------------

       Class clazz=Class.forName("Person类的完整路径");

    (2)根据类类型创建对象

       Person p=(Person)clazz.newInstance();

3.静态加载和动态加载

    (1)使用 new Object()的方式创建对象也叫做静态加载。

    (2)使用反射机制创建对象叫做动态加载。
--------------------- 
作者:qq6677174 
来源:优快云 
原文:https://blog.youkuaiyun.com/qq6677174/article/details/78139513 
版权声明:本文为博主原创文章,转载请附上博文链接!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值