Java知识---类的多态
来源:互联网 发布:足球买球让球算法 编辑:程序博客网 时间:2024/05/17 22:10
1.多态包含两层:
第一层(先进行)是编译时多态: 看类型(等号左边)—该引用的类型中有没有被访问的成员
第二层(再进行)是运行时多态: 看内存(等号右边)—new谁调谁(先看所new的类中有没有,若有则调用,否则看它的父类,依此类推)
@Test //运行时多态 public void demo2(){ Person p = new Student("Rose", 22, "English"); p.aa(); //运行时多态: 看内存---new谁调谁,,,因为new的是Student实例,因此先看Student中是否有aa()方法,若有则调用;否则看Person类中是否有,若有则调用; 若还没有则看Object类,若还没有则肯定是编译时错误的(多态的第一步会拦住的). } @Test//编译时多态 public void demo3(){ Person p = new Student("Rose", 22, "English"); p.bb(); //编译时多态: 看类型---该引用的类型中有没有被访问的成员。 本例p是Person类型, 若Person类中有bb()方法则编译通过,否则看它的父类Object,若有还通过,,否则就是编译错误。 }
2.编译时多态决定”编译时能否通过”,运行时多态决定”程序的执行结果”
3.多态: 把学生当人 —子例实例即是父类对象
多态最经典的语句: Person p = new Student();
阅读全文
0 0
- Java知识---类的多态
- JAVA的Random类 知识
- Java 的容器类知识
- Java知识--类的封装
- Java知识---类的继承
- java多态的前置知识--对象转型
- java类加载机制的简单知识
- Java中String类的知识
- java:Properties类的相关知识
- java反射类的相关知识
- 一些java的知识
- Java的网络知识
- java 的一些知识
- Java的网络知识
- java的预备知识
- java注解的知识
- java的知识
- 查找的JAVA知识
- 柯西-施瓦茨不等式的四种形式
- 关于unity的OnBecameVisible和OnBecameInvisible用法
- HTML小笔记《2017-10-14》
- display:none 与 opacity:0 与 visibility:hidden 三者的区别
- everything设置所有盘符自动更新,避免陌生路径下不能使用问题
- Java知识---类的多态
- 关于jinja2 宏定义的小问题
- 修改openstack镜像--支持root密码登陆
- ViewPager 和 RadioGroup 组合布局
- JVM之内存运行时区域
- 笔试_oracle(6)
- 通过Xshell连接linux——安装jdk
- 简单的一级指针 const define enum
- 淘宝传奇工程师多隆的程序世界