面向对象
接口:是不可以创建对象的,因为有抽象方法。
需要被子类实现,子类对接口中的抽象方法全都覆盖后,子类才可以实例化。
接口可以多被类多实现。
多态:可以理解为事物存在的多种体现形态。
体现:
父类的引用指向子类对象。
也可接收自己的子类对象。
前提:
必须是类与类之间有关系,要么extend要么implement
存在覆盖。
好处:提高程序扩展性,弊端:只能使用父类的引用访问父类中的成员。
成员函数特点:
编译时期:参阅引用型变量所属类中是否有调用的方法。如果有,编译通过;
运行时期:参阅对象所属的类中是否有调用的方法。
-----------------------------------------------------------------------------
总结:成员函数在多态调用时,编译看左边,运行看右边。
eg:
class Fu{
void method1(){
System.out.println("fu_method1");
}
void method2(){
System.out.println("fu_method2");
}
void method4(){
System.out.println("fu_method4");
}
}
class Zi extends Fu{
void method1(){
System.out.println("zi method_1");
}
void method3(){
System.out.println("zi method_3");
}
static void method4(){
System.out.println("Zi_method4");
}
class DuoTaiDemo4{
public static void main(String[] args){
Fu f = new Zi();
f.method1();
f.method2();
f.method4();
}
}
-----------------------------------------------------------------------
多态中,成员变量的特点:
无论编译和运行,都参考左边