Object 类型参数有两个问题:
1装箱/拆箱,传入一个int值(栈)
object有在堆里面,如果把int传递进来,就会把值从栈里面copy到堆里(装箱)
使用的时候,又需要用对象值,又会copy到栈(拆箱)
都是有CLR管理的
-----
设计思想:延迟声明,推迟一切可以推迟的,一切能晚点在做的事,就晚点做。
协变:就是为了让右边用上子类
逆变