目录
1.提出疑问
首先在了解XML和JSON之前我们会有一个疑问,那就是如果要定义一个根类(比如说书籍类),然后在其根类下面插入作为实例存在的子类,然后再定义子类的不同属性与特征,在Java语言中我们要实现此思想就得编译如下代码:
//Java
class Book{
private String name;
private String info;
//案例:
get/set方法
}
public static void main(String[] args) {
Book b = new Book();
b.setName(“《小红帽和七个小矮人》”);
b.setInfo(“他们幸福快乐地生活在一起”);
}
还有一种相较于Java语言比较简化的就是JavaScript,声明一下:Java和JavaScript虽然看起来有点像父产品和衍生子产品的意思,但他们这两种语言是没有任何关系的,仅仅是名字像而已。JavaScript的实现形式如下:
//JavaScript
var b = new Object();
b.name = "《白雪公主和大灰狼》";
b.info = "大灰狼吃了毒苹果,不治身亡";
虽然明显比Java简化很多,但还是需要new一个对象来实现,看似简单了,实则在数据变多之后还是会出现一些代码的冗杂和对象的混乱的情况,所以接下才会出现XML和JSON等辅助语言来解决这些痛点了。
2.XML是什么?
- XML 指可扩展标记语言(EXtensible Markup Language)。
- XML 是一种很像HTML的标记语言。(也有开放标签和闭合标签 <> </>)
- XML 的设计宗旨是传输数据,而不是显示数据,显示数据的是HTML。
- XML 标签没有被预定义。您需要自行定义标签。(在<>中自定义标签)
- XML 被设计为具有自我描述性。XML文档可以为自己声明 :<?xml version="1.0" encoding="UTF-8"?> 表示自己的版本是1.0 ,字符编码是UTF-8
- XML 是 W3C 的推荐标准。
XML并没有什么高深的含义,它仅仅是一个纯文本,有能力处理纯文本的软件都可以处理 XML。并且能够读懂 XML 的应用程序可以有针对性地处理 XML 的标签。而XML的标签是需要自定义的,而不是像HTML一样需要预定义<html></html> ,其标签的功能性意义依赖于应用程序的特性。案例如下: