如:

    • in 变量给代码提供数据。例如,copy方法有两个参数copy(src、dest),src负责接收数据,所以他就是in参数。
    • out变量存放用于别处的数据,在例子copy中,copy(src、dest),参数dest接收数据,所以它是out参数。

    我们可以用in和out原则来决定是否使用通配符,以及哪类通配符是合适的,一下是应该遵循的原则。

    • in变量用上界通配符定义,使用关键字extends。
    • out变量用下界通配符定义,使用关键字super。
    • 如果in变量可以为object类的方法访问的话,用无界通配符。
    • 如果代码要访问即是in又是out的变量,不用通配符。