PDF 课件和源代码下载地址:
https://gitee.com/geektime-geekbang/LetsJava
作者回复: 是的,内部类用的不好,确实会减少程序的可读性。 内部类的特点就是可以访问外部类的各种变量,但是还可以提供类级别的封装。如果某个方法需要A接口的实例,实例的具体实现正好用到局部变量,就可以考虑用内部类,减少参数的传递。 或者可以这么理解,如果感觉不需要用,那就不要刻意用内部类。
作者回复: 访问成员变量,不管是谁的,必须得用引用。this只是可以省略而已。 内部类的实例创建的方式语法比较奇怪,详细参见视频里的内容。
作者回复: “静态方法是不属于实现了这个方法的类的”,没有看很明白。更多的像是一个namespace的概念,就好像package name。
作者回复: 是的。所以如果改了final static的值的话,要把所有用到这个类的library都重新编译。所以从实用出发,static final的字面值(literal value)最好不要变化。
作者回复: 成员内部类如课中所说,使用场景确实不多。
作者回复: Java不会自动生成这种有业务含义的toString哦