当前位置: 首页 > news >正文

Day22多态详解

多态是面向对象的重要特性,在java中表现为父类引用指向子类对象 Father f1 = new Son();
多态是方法的多态,与属性无关
父类与子类之间需要有联系,否则类型转换异常,即ClassCastException
多态的存在条件是两个类之间有继承关系,方法重写时
有几个方法无法被重写:1,static 方法,属于类,它不属于实例
2,final 常量
3,private方法

package Demo6;public class Application {public static void main(String[] args) {//一个对象的实际类型是确定的//如下方的Student s1//可以指向的引用类型就不确定了:父类的引用指向子类//Student里的方法包含自己本身有的,从父类继承来的Student s1 = new Student();//可以指向子类,但无法调用子类独有的方法Person s2 = new Student();Object s3  = new Student();//对象能执行那些方法取决于左边里是否包含,与右边关系不大//左边,即引用类型决定了有无权限取调用这个方法//右边,即实际对象类型决定了调用方法是执行哪一种版本,是原始的,还是子类重写过的s1.run();//子类重写父类的方法,此时执行了子类的方法s2.run();s1.eat();((Student) s2).run();//强制转换,依旧遵循高转低将Person转换为Student,方便其调用Student中独有的方法}
}
package Demo6;public class Person {public void run(){System.out.println("四分配");}
}
package Demo6;public class Student extends Person {@Overridepublic void run() {System.out.println("直面失败");}public void eat(){System.out.println("及时行乐");}
}
http://www.hskmm.com/?act=detail&tid=18450

相关文章:

  • rad/s RPM之间的换算
  • 再见Playwright!谷歌官方Chrome DevTools MCP正式发布,AI编程效率再翻倍
  • Markdown 之——清单の语法
  • “计算理论之美”课程笔记一:概率
  • “计算理论之美”课程笔记四:高维空间组合优化
  • git分支从dev迁移到maser
  • Centos7安装ffmpeg
  • 2025.9.26总结
  • C++ 与现代并发编程:性能与复杂度的平衡艺术
  • 第五天
  • 926
  • 20250736
  • sql优化个人总结
  • Powershell 入门
  • 漏洞赏金猎手的新年目标实战指南
  • 数学作业
  • lc1037-有效的回旋镖
  • 日常刷题:cf每日一题+abc+反思复盘
  • 题解:P13523 [KOI 2025 #2] 序列与查询
  • 2025年9月26日 - 20243867孙堃2405
  • HarmonyOS 5 网络编程与材料存储实战:从RESTful API到本地持久化
  • 老系统-新系统的数据迁移
  • C语言中的for循环
  • excell中完成矩阵的转置相乘
  • go 面试题
  • 论文笔记:How Can Recommender Systems Benefit from Large Language Models: A Survey - 详解
  • newDay04
  • 5.WPF控件---ComboBox - 实践
  • SQLserver 通过本地方式改SA密码