java:多态
多态是方法的多态,属性没有多态。
父类:
public class Person { public void Run() { System.out.println("Person-Run()"); } }
子类:
public class Student extends Person { @Override public void Run() { System.out.println("Student-Run()"); } public void Eat() { System.out.println("Student-Eat()"); } }
测试:
Student s1=new Student(); Person s2=new Student(); Object s3=new Student(); s1.Run(); s2.Run();
Student-Run()
Student-Run()
父类的引用指向子类。子类重写了父类的方法,执行子类的方法。
另:
s2.Eat();//出错
子类能调用的方法都是自己的,或是继承父类的。父类虽然能指向子类,但能调用的方法只能是自己的,不能调用子类的方法。
注意:
多态存在的条件:1)继承关系,2)方法的重写,3)父类引用指向子类对象
不能重写的方法:1.static方法,属于类,它不属于实例。2.final 属于常量,不能重写。3.private方法。
2021.09.14

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号