Java三大特征--多态
来源:互联网 发布:福建广电网络爱家app 编辑:程序博客网 时间:2024/05/16 07:44
1、程序运行的最终结果只在执行期间才被确定,编译时无法确定
2、编译时所用参数类型一般为父类,运行时参数类型为确定的子类
3、三个必要条件:要有继承,子类要有方法的重写,父类引用指向子类对象(只可向上转型,不可向下转型)
测试例子如下:
package cn.ldedu;/** * 测试多态 * @author Lenovo * */class Animal{ public void sing(){ System.out.println("aaa"); }}class Cat extends Animal{ public void sing(){ System.out.println("喵喵喵"); } public void catchMouse(){ System.out.println("抓老鼠"); }}class Dog extends Animal{ public void sing(){ System.out.println("汪汪汪"); }}/** * 测试类 * @author Lenovo * */public class testduotai { public void testsing(Animal a){ a.sing(); // 测试instanceof方法 if(a instanceof Cat) ((Cat)a).catchMouse();//调用方法前一定要强制转型 } public static void main(String[] args) { testduotai tt=new testduotai(); //Animal 向下转型为Cat Animal a=new Cat(); Dog b=new Dog();//避免了转型,但是不推荐使用 tt.testsing(a); tt.testsing(b); //此时若"a"想调用catchMouse方法,需要强制转型,或者也可以在测试方法中利用instanceof方法调用catchMouse方法 Cat cc=(Cat)a; cc.catchMouse(); }}
运行截图:
关于抽象类、接口、回调会在其他文章详细描述
阅读全文
0 0
- Java三大特征-------多态
- Java三大特征--多态
- Java三大特征
- Java三大特征
- Java三大特征:封装、继承、多态
- Java的三大特征
- Java的三大特征
- java、面向对象的三大特征封装、继承、多态
- java面向对象的三大特征:封装,继承,多态
- Java面向对象的三大特征——多态
- java面向对象三大特征:封装、继承、多态
- JAVA的三大特征:封装,继承,多态
- Java面向对象三大特征:封装、继承、多态
- Java面向对象三大特征——多态
- java面向对象的三大特征:封装-继承-多态
- Java面向对象三大特征:封装、继承、多态
- java面向对象的三大特征:封装,继承,多态
- java三大特征之 多态性
- spring session redis 配置
- easyar 识别成功后,怎么回调java层代码
- 怎样在图片未加载完成之前预先获取图片的宽高
- mysql的六中排序
- 自定义手机锁屏界面
- Java三大特征--多态
- 算法总结
- 树的先序遍历
- 一步一步学习Kotlin(二)
- D3D11 物体A绕特定物体旋转及ID3DXMatrixStack配置
- chrome浏览器不能显示本地图片办法解决
- ECMAScript对象--整理
- [LeetCode]581. Shortest Unsorted Continuous Subarray
- C++——模版:类模版