1.Java的多态引用:父类的引用变量可以指向任意的子类对象,
这个需要好好理解一下,Father ft = new Son();
这里的new Son() 构造出来的Son对象,本质上还是一个Son类型,但是可以用父类的引用变量ft去指向它,也可以将它向上转型为
Father ft = (Father) new Son();
这里的Son只是表面看起来是Father类的对象,但是它本质上还是Son对象,这个是在它new的时候就决定了的,所以也只有这种情况下的ft 对象可以强制转换为Son类型
同理,子类对象也可以传递给需要父类对象参数的函数
2.object类的equals()和hashcode()方法,
进行比较时,先比较hashcode是否一致,不一致,则判断为不同的对象
若一致,则需通过equals方法比较两个对象的内存地址,是否为同一对象。当然string类和其他类中可以自己重写覆盖equals和hashcode 方法,最好也应该两个都重写,根据自己都需要来进行对象相同都比较,object中都相同是指两个对象就是同一个,即内存地址都相同