反射机制(1)认识Class类
认识Class类:
正常情况下,必须指定类的完整路径才能实例化对象,但是java中也允许通过一个对象找到其所在类的信息。这实际就是class类的功能。
package 类集;class X{ }; public class test1{public static void main(String args[]){X x = new X() ; // 实例化X类的对象System.out.println(x.getClass().getName()) ; // 得到对象所在的类 } }
运行结果:
类集.X
object类有如下优点:
CLASS类
Class本身表示一个类本身,通过class可以得到一个类中完整结构,包括此类的方法定义,方法属性等。
常用方法:
实例化class类对象的三种方法:
1,通过forName(包。类名称)方法。
2,类。class
3,对象。getClass()
一,其中forName定义如下:实例化是forName(包.类名称)
public static Class<?> forName(String className)throws ClassNotFoundException
可见,使用forName()需要处理异常。
二,getClass()是object类的方法,对象.getClass()。
三,类。class。
四,通过getName(),可以获取类名称。
如下例子:
package 类集;class X{ }; public class test1{public static void main(String args[]){Class<?> c1 = null ; // 指定泛型Class<?> c2 = null ; // 指定泛型Class<?> c3 = null ; // 指定泛型try{// 以下的操作形式是在开发中最常用的一种形式c1 = Class.forName("类集.X") ; //forName(包.类名称)}catch(ClassNotFoundException e){e.printStackTrace() ;}c2 = new X().getClass() ; // 通过Object类中的方法实例化c3 = X.class ; // 通过类.class实例化System.out.println("类名称:" + c1.getName()) ; // 得到类的名称System.out.println("类名称:" + c2.getName()) ; // 得到类的名称System.out.println("类名称:" + c3.getName()) ; // 得到类的名称 } }
一旦实例化Class类后,即可进行反射的进一步操作。
总结
1,了解class类的作用:反射源头,
2,三种class类的实例化方式,要以forName()重点掌握,还有 类.class
转载于:https://www.cnblogs.com/alsf/p/6538482.html
反射机制(1)认识Class类相关推荐
- atomic原子类实现机制_反射机制实现两个类的复制
废话不多说 简单的实现 直接上代码 我怕话多审核不过 实现的类 public class Copy {@SneakyThrowspublic static void objectClone(Objec ...
- Java 学习之反射机制“解刨”分解类,并获取内容!
正常情况下,单纯的做开发是接触不到反射机制的(额,当然并不排除例外的情况了).下面我就对我学到的反射方面的知识做一个小小的总结,旨在复习和以后的查看. 原理分析: 所谓反射就是将一个类当做我们研究的对 ...
- Java的反射机制 及 操作Class类
反射 一.静态语言和动态语言 1.1 静态语言 静态语言是在编译时变量的数据类型即可确定的语言,多数静态类型语言要求在使用变量之前必须声明数据类型,运行时结构不可变. 例如:C.C++.Java.De ...
- 反射机制2,Class类的使用
class是反射源头,不光可以取得对象所在类信息,也可直接通过class类的方法进行对象的实例化操作. 使用关键字new为对象实例化.如果已经实例化好了class对象,就可以通过class类中提供的n ...
- java 获取类方法_Java之反射机制三:获取类的方法
一.实体类BigDog.java package reflex; public class BigDog extends Dog { private Integer age; public Strin ...
- Java的反射机制 —— 类的镜子
Java的反射机制 -- 类的镜子 文章目录 Java的反射机制 -- 类的镜子 一.反射机制的原理 1.1.什么是反射? 1.2.反射机制的实现 1.3.获取类的Class对象的途径 1.4.运行时 ...
- 深入理解Java Class反射机制
本篇主要是深入对Java中的Class对象进行分析,这对后续深入理解反射技术非常重要,这篇有点偏向内功类文章. 深入理解Class对象 RRTI的概念以及Class对象作用 认识Class对象之前,先 ...
- 初识java反射机制
这篇小博客有这么些内容~认识何使用java反射机制的心路历程 什么是java反射机制呢?什么时候会用到java反射机制呢?怎么使用java反射机制呢? 那我们开始吧~ (一)反射机制(Reflecti ...
- 深入理解Java类型信息(Class对象)与反射机制
关联文章: 深入理解Java类型信息(Class对象)与反射机制 深入理解Java枚举类型(enum) 深入理解Java注解类型(@Annotation) 深入理解Java并发之synchronize ...
- Class对象和Java反射机制
一 前言 很多书上都说,在java的世界里,一切皆对象.其实从某种意义上说,在java中有两种对象:实例对象和Class对象.实例对象就是我们平常定义的一个类的实例: 1 2 3 4 5 6 /** ...
最新文章
- 2020-09-25C++学习笔记引用2:二级指针形参与指针形参的使用方法和区别重难点,主看综合代码(1、指针形参2、引用形参3、二级指针形参4、指针引用形参)
- 如何用 TensorFlow 实现生成式对抗网络(GAN)
- 我们破解了几乎所有智能手机的人脸识别,唯独没有iPhone
- java环境教程_window下Java环境配置图文教程
- 【Intellij IDEA系列】IDEA泛型处理Unchecked assignment:'java.util.Map' to 'java.util.Maplt;'
- 13 个适合『中级开发者』练手的项目
- 紫金计算机网络,南京理工大学紫金学院《计算机网络技术》考试复习试题试题(含答案解析)2...
- 计算机编程语言的分类与python语言快速度认识
- python整数池_对Python中小整数对象池和大整数对象池的使用详解
- Linux系统编程 -- 信号及signal函数
- 无法更新 TeamViewer 服务属性是什么意思?
- 图像基础--图像预处理技术(色彩插值、色彩校正、伽马校正、图像增强和白平衡)
- dsniff嗅探工具
- 上传图片到 OSS 带压缩图片代码
- 移动广告平台盈利模式
- django母版用法
- linux hairpin mode
- CV之IA:利用人工智能算法实现图像动画(以让古代皇帝画像以及古代四大美女画像动起来-来模仿偶像胡歌剧中角色表情动作为例-照片嗨起来)案例应用
- v2ray各种版本+一键搭建+bbr提速脚本
- 合理利用for循环遍历查找数据库数据