多态:重写的方法调用和执行
1.静态绑定:编译器在父类中找方法,如:
上面的eat()方法是先在父类中找方法,父类没有的话,就算子类有编译也会报错。(如果引用方法在父类中存在,编译通过,找不到则报错。
2.动态绑定:运行时先在子类中方法,没有则向上找,也就是从父类中找。
如:
如果子类中有的方法父类没有,可以将父类强转为子类。
但是转的过程也就是down casting时会出现异常,关于异常处理,我们明天再讲。
大家可以看看下面的图,利用Java多态来分析这张图片。
多态:重写的方法调用和执行
1.静态绑定:编译器在父类中找方法,如:
上面的eat()方法是先在父类中找方法,父类没有的话,就算子类有编译也会报错。(如果引用方法在父类中存在,编译通过,找不到则报错。
2.动态绑定:运行时先在子类中方法,没有则向上找,也就是从父类中找。
如:
如果子类中有的方法父类没有,可以将父类强转为子类。
但是转的过程也就是down casting时会出现异常,关于异常处理,我们明天再讲。
大家可以看看下面的图,利用Java多态来分析这张图片。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/514627.html
如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!