反射是什么

news/2024/7/7 22:57:35

什么是反射

反射机制是:在运行状态中,对于任意一个类,对象,都能够知道所有属性和方法,并且能修改它。

反射机制允许程序在运行时取得任何一个已知名称的class的内部信息

类名

用途

Class

代表类的实体,在运行的Java应用程序中表示类和接口

Field

代表类的成员变量/类的属性

Method

代表类的方法

Constructor

代表类的构造方法

反射的实现方式第一步:获取Class对象

有4种方法:

1)Class.forName(“类的路径”);

2)类名.class

3)对象名.getClass()

4)基本类型的包装类,可以调用包装类的Type属性来获得该包装类的Class对象

反射机制的优缺点:

优点:

1、能够运行时动态获取类的实例,提高灵活性;

2、与动态编译结合

缺点:

1、使用反射性能较低,需要解析字节码,将内存中的对象进行解析。

2、相对不安全,破坏了封装性(因为通过反射可以获得私有方法和属性)


http://lihuaxi.xjx100.cn/news/115916.html

相关文章

【C++】【LeetCode】【二叉树的前序、中序、后序遍历】【递归+非递归】

目录 一、二叉树的前序遍历 递归解法 非递归解法 二、二叉树的中序遍历 递归解法 非递归解法 三、二叉树的后序遍历 递归解法 非递归解法 默认情况下,一个线程的栈空间大小为8MB,当递归的深度太深,我们的程序就容易崩溃 如果递归的…

《机器学习实战》6.支持向量机(SVM)

本章涉及到的向相关代码和数据 SVM有很多种实现方法,但是这里学习最流行的一种,即序列最小化(SMO)算法。在此之后,将介绍如何使用一种称为核函数的方式奖SVM拓展到更多数据集上 1 基于最大间隔分隔数据 优点&#xf…

固定资产管理系统给企业带来的价值?

一套好用的固定资产管理系统不仅能帮助企业提升95%的盘点效率,提升35%的固定资产利用率,还能降低企业固定资产的重复采购率,从而帮企业节省开支,降低企业的整体运营成本。 易点易动为企业提供固定资产全生命周期管理平台。凭借多…

数据库练习题

写在前面 这篇文章是一些关于数据库的练习题,所用的数据库为学生课程数据库,其中有三张表分别为学生表(student)、课程表(course)、成绩表(sc)。学生表有6列,分别为学号&…

asp.net员工管理系统VS开发sqlserver数据库web结构c#编程计算机网页项目

一、源码特点 ASP.NET员工管理系统是一套完善的计算机web设计系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为vs2010,数据库为sqlserver2008,使用c#语言开发 。 asp.net员工管理系统VS开发sqlserv…

git cherry-pick 报错 fatal: bad object [commitID]

背景 项目不同模块的功能建立了不同的分支进行开发,后期要将这部分代码从附属分支往主分支上合并,合并过程中出现这个问题,特此纪要! 问题 git cherry-pick [commitID]时报错? 错误图录: 说明 cherry-pick做…

[ Linux ] 一篇带你搞懂进程控制(看完可实现一个简易的shell)

本文前半部分和上篇文章相同,之所以加进来是因为这两篇文章均是进程控制部分内容。如果大家已经看过前两部分内容,可直接从2.1起看! 目录 0.进程创建 fork()之后,操作系统做了什么? 写时拷贝 fork调用失败的原因 …

Java计算机毕业设计大学生校园社团管理系统源码+系统+数据库+lw文档

Java计算机毕业设计大学生校园社团管理系统源码系统数据库lw文档 Java计算机毕业设计大学生校园社团管理系统源码系统数据库lw文档本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开发软件:idea eclipse 前端技术&#xf…