Skip to content

Commit aac8d31

Browse files
authored
Merge pull request #2824 from makabakai/patch-1
改正了类型擦除的英文表述
2 parents 96bf7d9 + 1c5e23b commit aac8d31

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

docs/java/basis/syntactic-sugar.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ public class switchDemoString
101101

102102
我们都知道,很多语言都是支持泛型的,但是很多人不知道的是,不同的编译器对于泛型的处理方式是不同的,通常情况下,一个编译器处理泛型有两种方式:`Code specialization``Code sharing`。C++和 C#是使用`Code specialization`的处理机制,而 Java 使用的是`Code sharing`的机制。
103103

104-
> Code sharing 方式为每个泛型类型创建唯一的字节码表示,并且将该泛型类型的实例都映射到这个唯一的字节码表示上。将多种泛型类形实例映射到唯一的字节码表示是通过类型擦除(`type erasue`)实现的。
104+
> Code sharing 方式为每个泛型类型创建唯一的字节码表示,并且将该泛型类型的实例都映射到这个唯一的字节码表示上。将多种泛型类形实例映射到唯一的字节码表示是通过类型擦除(`type erasure`)实现的。
105105
106106
也就是说,**对于 Java 虚拟机来说,他根本不认识`Map<String, String> map`这样的语法。需要在编译阶段通过类型擦除的方式进行解语法糖。**
107107

0 commit comments

Comments
 (0)