PDF 课件和源代码下载地址:
https://gitee.com/geektime-geekbang/LetsJava
作者回复: ✅,优秀
作者回复: Q:如果说仅仅是为了公共代码抽取,那抽象类是不是也可以做这个事情? A:可以,但是一个类只能继承一个父类,却可以实现多个接口。这就是区别/用途 Q:拥有default的接口类跟抽象类的本质区别是什么?或者说是不是在某种程度上,接口可以取代抽象类了。 A:我在视频中应该提到过。本质是interface不能有成员被变量。这一杠子横在那里,实现多个接口就和传统的多继承有了本质区别。可以说是取其精华,去其糟粕(繁琐复杂)。如果default方法不使用任何局部变量,那么就可以取代抽象类。反之,还是得用抽象类。
作者回复: 就是让别人调用撒。比如有好几个default方法,有共同的操作,那么可以考虑放在这个接口里的一个静态方法里。
作者回复: 是的,多使用接口,先定义规范,再去想具体实现。 当然,这种能力也不是一蹴而就的。慢慢锻炼~
作者回复: ✅
作者回复: 可以认为静态方法不存在继承的说法。静态方法推荐的使用方法就是类型名.方法名
作者回复: 简单来说, 都是JSR推进的. 这里有位有心人的总结 https://howtodoinjava.com/java-version-wise-features-history/