java class类_关于创建java中的class类的对象的方法
1.由于Class类没有公共构造方法,所有创建Class的对象的方法有以下几种:
①通过Class.forName()静态方法返回Class类的一个实例
Class cls = Class.forName("test.dog - 这个网站可出售。 - 最佳的test 来源和相关信息。");
②通过类名.class来获取一个Class类的实例
cls = Dog.class;
③代码运行在非静态区,通过this.getClass()获取Class类的一个实例
Class cls = this.getClass();
2.Class对象既然是描述一个类,那么我们通过该Class的实例能够做什么事情呢?
//类的属性
//获取类名
System.out.println(cls.getName());
System.out.println(cls.getSimpleName());
//获取类的修饰限定符
int modi = cls.getModifiers();
System.out.println(modi);
//获取一个类的属性
//根据一个属性名获取一个public属性的描述
Field field = cls.getField("name");
//获取一个类的全部public属性的描述
Field[] fields = cls.getFields();
System.out.println(fields.length);
//根据一个属性名获取一个在类中声明的属性的描述
Field declaredField = cls.getDeclaredField("gender");
//获取所有在类中声明的属性的描述
Field[] declaredFields = cls.getDeclaredFields();
//获取一个类的方法
//根据一个方法的名字获取类中的一个public的方法的描述
Method method = cls.getMethod("run", String.class,int.class);
//获取所有在类中是public的方法的描述
Method[] methods = cls.getMethods();
//根据一个方法名获取在类中声明的一个方法的描述
Method declaredMethod = cls.getDeclaredMethod("eat", null);
//获取所有在类中声明的方法的描述
Method[] declaredMethods = cls.getDeclaredMethods();
//返回cls所代表的类的实例
Object obj = cls.newInstance();
System.out.println(obj);
java class类_关于创建java中的class类的对象的方法相关推荐
- java字符串转json取集合_Java中Json字符串直接转换为对象的方法(包括多层List集合)...
使用到的类:net.sf.json.JSONObject 使用JSON时,除了要导入JSON网站上面下载的json-lib-2.2-jdk15.jar包之外,还必须有其它几个依赖包:commons-b ...
- java面试题43要使某个类能被同一个包中的其他类访问,但不能被这个包以外的类访问,可以( )
java面试题43要使某个类能被同一个包中的其他类访问,但不能被这个包以外的类访问,可以( ) A让该类不使用任何关键字 B使用private关键字 C 使用protected关键字 D 使用void ...
- java 异常机制_深入理解Java异常处理机制
一.引子 try-catch-finally恐怕是大家再熟悉不过的语句了,而且感觉用起来也是很简单,逻辑上似乎也是很容易理解.不过,我亲自体验的"教训"告诉我,这个东西可不是想象中 ...
- futuretask java 并发请求_图文并茂理解 Java 多线程
优质文章,及时送达 线程 线程的概念,百度是这样解释的: 线程(英语:Thread)是操作系统能够进行运算调度的最小单位.它被包含在进程之中,是进程中的实际运作单位.一条线程指的是进程中一个单一顺序的 ...
- java 委托原则_为什么说 Java SPI 的设计违反双亲委派原则
一.双亲委派模型 1.类加载器可以细分为如下三类 启动类加载器(Bootstrap ClassLoader),负责将所有存放在\lib目录中的,或者被-Xbootclasspath参数所指定路径中,并 ...
- java list 对象 json字符串_Java中Json字符串直接转换为对象的方法(包括多层List集合)...
使用到的类:net.sf.json.JSONObject 使用JSON时,除了要导入JSON网站上面下载的json-lib-2.2-jdk15.jar包之外,还必须有其它几个依赖包:commons-b ...
- python创建对象_对Python中9种生成新对象的方法总结
先定义一个类: class Point: def __init__(self, x, y): self.x = x self.y = y 下面我们使用9种方法来生成新的对象: point1 = Poi ...
- 多层json字符串转map_Java中Json字符串直接转换为对象的方法(包括多层List集合)
使用到的类:net.sf.json.JSONObject 使用JSON时,除了要导入JSON网站上面下载的json-lib-2.2-jdk15.jar包之外,还必须有其它几个依赖包:commons-b ...
- 【错误记录】Groovy 闭包使用报错 ( 闭包中不能直接使用外部对象的方法 | 需要先设置 delegate 代理 )
文章目录 一.报错信息 二.解决方案 一.报错信息 在 Groovy 中的 Closure 闭包中 , 直接调用外部对象的方法 , 会报错 ; class Test {def fun() {print ...
最新文章
- ffmpeg播发器(H265)
- SecutrCRTt 连接VirtualBox 中的Ubuntu -端口转发
- org.activiti.bpmn.exceptions.XMLException: src-resolve: 无法将名称 'extension' 解析为 'element declaration'
- Flagger on ASM——基于Mixerless Telemetry实现渐进式灰度发布系列 2 应用级扩缩容
- powershell运行D盘java_PowerShell:使用相对路径从快捷方式运行脚本
- 用CSS伪类制作一个不断旋转的八卦图?
- python二进制、字符编码及文件操作
- yii2解决资源插件路径不对应问题
- ubuntu 是基于debian gnu/linux,在 Ubuntu 或其它 GNU/Linux 系统下安装 Debian
- 谷歌 Provisional headers are shown 和360急速模式 网络连接错误
- python教程2019全套-Python学习路线2019升级版(课程大纲+视频教程+网盘资源下载)...
- delegate vs. event(转自LTP.NET知识库)
- Mysqldump 1449 错误解决 mysqldump: Got error: 1449
- XP安全防护国际评测 360小红伞卡巴排行前三
- TMOD、SCON、PCON寄存器的配置
- Cypress Test
- 概率统计17——点估计和连续性修正
- 自己定义微信图文模板注意事项整理
- QTextStream 类(文本流)和 QDataStream 类(数据流)
- input限制只能11位的数字电话号码
热门文章
- 这是一则计算机视觉顶级会议CVPR与腾讯的爆闻,啥?
- 云漫圈 | 有趣的海盗问题 (完整版)
- 边缘指示函数matlab,matlab图像处理——傅立叶变换边缘提取
- 平板电脑连接投影仪_交互式触控幼教白板如何与平板进行连接-微幼科技
- android system.img编译,快速编译system.img和boot.img的方法
- 企业微信H5_身份验证,PC网站企业微信扫码授权登录
- springboot elasticsearch vue ik中文分词器 实现百度/京东全文搜索
- 秒杀场景_多线程异步抢单队列分析与实现_02
- linux6/7 下载、安装、配置JDK
- 系统架构设计师 - 信息安全技术