
反射:
反射概念:在运行状态中,对于任意一个类都能知道这个类的所有方法和属性;对于任意一个对象,都能调用它的任意一个方法和属性,这种动态获取信息以及动态调用对象的方法的功能称为反射机制。
java反射相关的类主要包括
Class 类型
Constructor 构造方法
Method 方法
Field 属性
...都在java.lang.reflect包中
Constructor构造方法和Method方法的区别
相同处;都能通过get方法获取方法名getName、方法的参数类型getParameterTypes
不同处:Constructor还可以创建实例newinstance
Method还可以获取方法的返回值类型getReturnType、通过invoke调用任意一个对象的具体方法
XML的概念
XML指可扩展标记语言、主要作用是传输数据并不是显示数据、
XML文档必须有根元素、
节点元素必须有对应的关闭标签、
XML标签对大小写敏感、
XML元素必须被正确的嵌套、
XML属性值必须加引号
DOM和SAX两种解析模式
DOM:Document Object Model
文档对象模型,将整个文档加载进内存并分析整体结构,根据节点元素之间的父子关系完成整个文档上所有节点的遍历
优势:符合XML整体数据结构逻辑定义,可以对文档结构进行修改
劣势:需要完整的加载文档,效率低,对于大型文档不适用
SAX:Simple API for XML
针对XML文档的事件驱动解析引擎,逐行对文档进行分析,遇到文档的特定组成部分后回调预先定义的事件回调
优势:无需完整加载文档,一边加载一边逐条解析、不会对程序的运行时内存造成影响
劣势;不符合XML文档的整体数据结构,只能用来解析遍历,不能修改
JSON概念
是更轻量级的文本数据交换格式、类似XML,但是比XML更小更快更易解析
JSON和XML的区别
相同处:
都是纯文本
具有自我描述性(人类可读)
具有层级结构(值中存在值)
不同处
没有结束标签
更短、更简洁
读写的速度更快
能使用内建的JacaScript eval()方法解析
使用数组
不使用保留字
JSON返回示例;
{
"resultcode":"200",
"reason":"Return Successd!",
"result":
{
"area":"江苏省苏州市",
"location":"电信"
}
}
XML返回示例:
<?xml version="1.0" encoding="utf-8"?>
<root>
<resultcode>200</resultcode>
<reason>Return Successd</reason>
<result>
<area>江苏省苏州市</area>
<location>电信</location>
</result>
</root>