mirror of
https://github.com/sjsdfg/effective-java-3rd-chinese.git
synced 2025-01-27 21:00:24 +08:00
31. 使用限定通配符来增加API的灵活性
This commit is contained in:
parent
ff5d7b2875
commit
b4579bc8f7
@ -1,4 +1,4 @@
|
||||
# 31.使用限定通配符来增加 API 的灵活性
|
||||
# 31. 使用限定通配符来增加 API 的灵活性
|
||||
|
||||
如条目 28 所述,参数化类型是不变的。换句话说,对于任何两个不同类型的 `Type1` 和 `Type`,`List<Type1>` 既不是 `List<Type2>` 子类型也不是其父类型。尽管 `List<String>` 不是 `List<Object>` 的子类型是违反直觉的,但它确实是有道理的。 可以将任何对象放入 `List<Object>` 中,但是只能将字符串放入 `List<String>` 中。 由于 `List<String>` 不能做 `List<Object>` 所能做的所有事情,所以它不是一个子类型(条目 10 中的里氏替代原则)。
|
||||
|
Loading…
Reference in New Issue
Block a user