为了在不更改char基本数据类型且不与以前的 Java 程序不兼容的情况下支持补充字符,补充字符由一对称为* surrogates 的代码点值定义。第一个代码点来自U+D800到U+DBFF的高替代范围,第二个代码点来自U+DC00到U+DFFF的低替代*范围。例如,使用这对代理值U+D801和U+DC00定义了 Deseret 字符 LONG I U+10400。
char
U+D800
U+DBFF
U+DC00
U+DFFF
U+D801
U+10400