对静态语言而言 对象向外界承诺我有什么,客户端可以依赖这些承诺,它通过它的"类型"来承诺这一点 优点是: "它承诺了有的就一定有", 缺点是:"它没有承诺的就一定没有"对动态语言而言 从不向外界承诺我有什么,我随时会变,这会我是鸭子,过会就变成了一只鸡 优点是:"它有什么客户端就可以使用什么" 缺点是:"客户端无法确定它是否真的有"