两个问题:
- 第一个圆圈圈那儿 : “变量pair已经声明为类型 Pair<LocalDate> , 并且这个类型只有一个名为 setSecond 的方法 , 即 setSecond(Object)” 。
为啥是 setSecond(Object) ?? 就算是 setSecond(Object)也应该是 “类型擦除后” 才是 setSecond(Object) 吧 , 但是并没有说是 类型擦除后啊 。
- 第二个圆圈圈那儿 : “这个对象是DateInterval类型,因而将会调用 DateInterval.setSecond( Object ) 方法” 。
按 “这个对象是DateInterval类型” 这个描述 , 应该是要按照 多态 来调用的意思, 那不就应该调用 DateInterval 类的 setSecond( LocalDate ) 方法吗 ??而不是 setSecond( Object ) 方法吧 , 是不是书写错了 ??
我感觉完成了文字游戏。擦除后就是object,没擦除就是localDate ,这么理解就行了。
DateInterval.setSecond( Object )
也可能说的是父方法,setSecond( LocalDate )
说的是子方法,用参数来区分重写关系。很多书籍,确实不够严谨,错误也说不上。