java多态和Object类
多态
定义:某一类事物的多种存在形态。
多态的体现:父类的引用指向了自己的子类对象。
父类的引用也可以接收自己的子类对象。
多态的前提:必须是类与类之间有关系,要么继承,要么实现。通常还有一个前提,存在覆盖。
多态的好处:多态的出现提高了程序的扩展性。
多态的弊端:只能使用父类的引用访问父类中的成员。
转型:Animal a = new Cat();
a.eat();
Cat c = new Cat();
Cat c = (Cat)a;
// 将父类的引用转成子类类型
//不能把父类对象转换为子类类型。我们能转换的是父类应用指向了自己的子类对象时,该应用可以被提升,也可以被强制转换。 多态自始至终都是子类对象做着变化。
多态成员函数的特点:在编译时期:参阅引用型变量所属的类中是否有调用的方法,如果有,编译通过,没有,编译失败。在运行时 期:参阅对象所属的类中是否有调用的方法。
成员函数在多态调用时:编译看左边,运行看右边。
在多态中成员变量的特点:无论编译与运行,都参考的左边。
在多态中,静态成员函数的特点:无论编译和运行,都参考左边。
object类
它是所有对象的间接父类;该类中定义的所有对象都具备的功能。
equals()方法:
equals 方法是String类从它的超类Object中继承的, 被用来检测两个对象是否相等,即两个对象的内 容是否相等,区分大小写。