多态

多态

Student s1 = new Student();
Person s2 = new Student();
Object s3 = new Student();
Person s4 = new Person();

s1 s2 s3 都是Student类的对象,但各自能够调用哪些方法取决于左边的类型

s2 s4 的区别在于 s2中所有Person与Student同名同参的方法都被重写了,但能调用的方法是一样的

也就是说可调用的方法取决于类型方法的内容取决于new指向的对象

  • 多态是方法的多态,属性没有多态
  • 必须是父类和子类之间多态
  • 存在条件:继承关系 方法需要重写 父类引用指向子类对象

不能重写的方法 -- 没有多态

  • static 方法,属于类,不属于实例
  • final 常量
  • private 方法,不能重写
posted @ 2023-01-01 15:03  LaViez  阅读(20)  评论(0)    收藏  举报