多态性(java、c#)---- 一

2025-10-18 20:05:59

1、首先,明白多态性的概念;多态:一个行为,多种动作;

多态分为:静态多态和动态多态;

静态多态为编译时的多态;一般表现为方法的重载,和继承无关

动态多态为运行时多态;继承是运行时多态的首要前提;

多态性(java、c#)---- 一

2、如上图,Shape是一个类或者接口,里面有方法draw();

其他形状:Circle,Triangle,Square类继承父类Shape,并重写了draw()

当基类的引用指向子类的对象实例;并且通过基类引用调用被覆盖的方法;

多态性(java、c#)---- 一

3、再实现main方法之前。首先先了解一个概念;

向上转型和向下转型;如图;

向上转型:父类  父类对象=new  子类();自动完成

向下转型:子类  子类对象=(子类) 父类实例;注意在完成向下转型之前,

首先应该先建立向上转型的关系;如第二张图

多态性(java、c#)---- 一

多态性(java、c#)---- 一

4、main方法:向上转型的实例;

多态性(java、c#)---- 一

多态性(java、c#)---- 一

5、向下转型的实例;必须先完成向上转型;首先看一个错误的例子;

没有先发生向上转型,直接发生向下转型,编译会通过,但运行会异常;

多态性(java、c#)---- 一

6、正确的做法是:先进行向上转型;如图;

多态性(java、c#)---- 一

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
相关推荐
  • 阅读量:67
  • 阅读量:177
  • 阅读量:160
  • 阅读量:194
  • 阅读量:131
  • 猜你喜欢