AJPFX的反射学习笔记
反射是描述 数据结构的结构
属性、方法(数据)元数据
类(数据结构)描述数据的结构-->类也是特殊的对象---->元数据
CLASS类 描述数据结构的结构
在JAVA里面用Class 类 描述类的类 ---->
Method 类 描述类中的方法 ---->
反射得到描述数据额结构的数据的一种行为
Class类中有{
getPackage();//得到包
getName();//得到类名
getModerfy();//得到修饰符
Class getSuperclass();//得到父类 只有一个父类 返回一个Class <?>类型
Class gerInterface();//得到接口
Class[] getClasses();//得到多个子类 要用数组装
Filed[] getFiled();//获得一个类里面 所有的字段
Filed getFiled(String filename);//获得指定名称的字段
getConstructors();//获得构造器
getConstructor(Class...parameterType);//基本数据类型可以转变成一个CLASS
}
JAVA字段?
JAVA构造器?
表示Class类的对象
使用一个叫Class 的属性
Class<String> c=String.class //表示JVM里面表示String的字节码
Class<String> c2=String.class
System.out.println("c2");
System.out.println(c==c2); //得到true 用的是内存中的的同一份字节码
第二种
由于Class类里面没有构造函数 所以就有至少一个或者两个的静态函数 比如:forName()
forName(className,true,currentLoader)
其中className为完全限定名----->带有包名的name,比如java.lang.string;
Class<String> clazz=(Class<String>) Class.forName("java.lang.string")
Objiect getClasses()----->返回一个运行时的类型----->不是定义的类型
List<Stirng> lists=new ArrayList<String>;
lists s=new lists();
反射会以失去性能作为代价
框架用的多 性能失去多 因为框架就是用反射做的
AJPFX的反射学习笔记的更多相关文章
- Java 反射学习笔记
要学反射,先要了解Class这个类,Class是所有Java类的一个总称,Class的实例中存储的是一个类的字节码,获取Class的实例有三种方式: System.class new Date().g ...
- java学习——java中的反射学习笔记
Java--reflect 一.Class类的使用 什么是Class类? 1:在面向对象的世界中,万事万物皆对象. java语言中,静态的成员,普通数据类型类是不是对象呢? 是,对象!是类的对象! 类 ...
- java反射学习笔记
1.java反射概念 JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方法的功 ...
- [新手学Java]反射学习笔记
示例类 @SuppressWarnings("unused") public class Person { public String Name; private int Age; ...
- c# 反射学习笔记
首先了解C#反射的概念,反射是一个运行库类型发现的过程.通过反射可以得到一个给定程序集所包含的所有类型的列表, 这个列表包括给定类型中定义的方法.字段.属性和事件.也可以动态的发现一组给定类支持的借口 ...
- Java reflect 反射学习笔记
1. class 类的使用 万事万物皆对象 (基本数据类型, 静态成员不是面向对象), 所以我们创建的每一个类都是对象, 即类本身是java.lang.Class类的实例对象, 但是这些对象不需要 n ...
- java 反射---学习笔记
一.java的动态性 反射机制 动态编译 动态执行JavaScript代码 动态字节码操作 二.动态语言 动态语言 程序运行时,可以改变程序结构或变量类型,典型的语言:python.ruby.java ...
- 反射 学习笔记之Class类的使用
1 java世界中万事万物皆对象,除了2个特殊情况 int float等这些基本数据类型,(但是也都有Integer和Float等封装类做了弥补) java staic定义的,它不是属于对象的,而是 ...
- Java反射学习笔记01
随机推荐
- iOS 视图在不同View之间的切换(对于convertRect:函数的一些理解)
可以通过以下函数完成坐标体系在不同View之间的切换,如下面是完成当前View向ParentView坐标的转换(一个矩阵转换)CGRect parentRect = [currentView conv ...
- Educational Codeforces Round 10 D. Nested Segments
D. Nested Segments time limit per test 2 seconds memory limit per test 256 megabytes input standard ...
- js 中继承的几种方式
继承的方式一共有三种: 一.原型继承 通过prototype 来实现继承. function Person(name,age) { this.name=name; this.age=age; } ...
- SDUT OJ 2892 A (字典树问题-输出出现次数最多的字符串的出现次数,60ms卡时间,指针+最后运行完释放内存)
A Time Limit: 60ms Memory limit: 65536K 有疑问?点这里^_^ 题目描述 给出n(1<= n && n <= 2*10^6)个字 ...
- 织梦DEDE多选项筛选_联动筛选功能的实现_二次开发
织梦默认的列表页没有筛选功能,但有时候我们做产品列表页的时候,产品的字段比较多,很多人都需要用到筛选功能,这样可以让用户更方便的找到自己所需要的东西,实现这个联动筛选功能需要对织梦进行二次开发,下面就 ...
- CoreData兼容iOS9和iOS10
由于iOS10之后CoreData Stack的更改无法在iOS9的系统中运行,所以我们需要对上一小节中封装的工具类进行系统版本的兼容 iOS9和iOS10中CoreData最本质的区别其实就是管理对 ...
- android:oneshot
帧动画的自动执行:oneshot . 如果为true,表示动画只播放一次停止在最后一帧上,如果设置为false表示动画循环播放.
- DP专辑之最长公共子序列及其变形
vijos1111(裸的最长公共子序列) 链接:www.vijos.org/p/1111 题解:好久没有写最长公共子序列了,这题就当是复习了.求出最长公共子序列,然后用两个单词的总长度减去最长公共子序 ...
- 洛谷 P1578 奶牛浴场 —— 最大子矩形
题目:https://www.luogu.org/problemnew/show/P1578 枚举左边界,向右枚举右边界,同时不断限制上下边界,最后右边界是整个图的边界: 由于没有做左边界是整个图的边 ...
- robotframework:appium切换webview后,在第一个页面操作成功,跳转到第二个页面后,执行命令失败
问题: 在用robot写手机淘宝app的自动化时,打开手机淘宝后,点击天猫国际,跳转到天猫国际页面,天猫国际页面是H5, 需要切换到对应的webview,切换到webview后,点击美妆菜单,跳转到美 ...