java中多态

来源:互联网 发布:医学动画视频知乎 编辑:程序博客网 时间:2024/06/02 04:28

1.什么是多态

    同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果,就叫做多态

2.多态分类

    编译时多态、运行时多态

    编译时多态:也叫设计时多态,这种多态实际上就是方法重载

    运行时多态:代码在被运行时,系统根据调用该方法的实例的类型来决定选择调用哪个方法,被称为运行时多态,体现在方法重写


    ps:区分编译与运行,

    当你一段代码写完之后一般会经历两个阶段:
               一、编译阶段
                      使用指令:javac
                      这个阶段,JVM首先把代码加载完成,然后开始检查语法。如果出现语法错误则提示错误。这个阶段提示的错误我们一般称为编译器错误!
               二、运行阶段
                      使用指令:java
                      这个阶段,JVM将执行java代码,这个时期出现的错误我们一般称为运行期错误!
                      编译器错误一般都是语法错误!运行期错误一般都是程序内部(或者程序逻辑)错误!

2.多态条件

    编译时多态,具体可看方法重载的概念

    运行时多态,需要满足三个条件:要有继承(包括接口的实现)、要有重写、父类引用指向子类对象

3.多态解释

    运行时多态的解释:运行时多态是指程序中定义的引用变量所指向的具体类型和b.通过该引用变量发出的方法调用在编程时并不确定,而是在程序运行期间才确定,即一个引用变量倒底会指向哪个类的实例对象,该引用变量发出的方法调用到底是哪个类中实现的方法,必须在由程序运行期间才能决定.

4.多态好处

    可替换,可拓展,灵活

    接口性,多态是超类或者接口通过方法签名,向子类提供了一个共同方法声明,由子类来完善或者覆盖它而实现的


0 0
原创粉丝点击