星驰编程网

免费编程资源分享平台_编程教程_代码示例_开发技术文章

Java面向对象的三大特性之——多态

此目录衔接前面两篇

目录

  • 3. 多态
    • 3.1 含义
    • 3.2 实现
      • 3.2.1 操作名称的多态实例(方法重载)
      • 3.2.2 和继承有关的多态实例(方法重写)
    • 3.3 优点
    • 3.4 缺点

3.1 含义

一种多态是操作名称的多态,即多个操作具有相同的名字(方法重载),但这些操作所接收的消息类型(参数)必须不同。例如叫一个人(同一个对象)执行 “求面积” 操作时,多态可以向操作传递不同的消息,如求 “矩形面积” 或 “梯形面积”(矩形传递宽高,梯形传递上下底和高),以便让对象根据相应的消息来产生相应的行为。

另一种多态是和继承有关的多态,是指同一个操作被不同类型对象调用时可能产生不同的行为(子类重写父类中的方法)。例如,猫和狗都具有哺乳类的行为 “叫声”。但是,狗操作 “叫声” 产生的声音是 “汪汪…”,而猫操作“叫声”产生的声音是 “喵喵…”等。

————————————————

3.2 实现

3.2.1 操作名称的多态实例(也就是方法重载)

方法名相同 + 参数个数或者类型不同

3.2.2 和继承有关的多态实例(也就是方法重写)

继承 + 方法重写 + 父类的引用指向子类对象

3.3 优点

  • 可替换(可以替代一存在的代码)
  • 可扩充(增加的子类不会影响已存在的类的运行和操作)
  • 灵活性,能够提高使用效率;
  • 简化性(处理大量对象的运算和操作时,也很方便编写和修改)

3.4 缺点

  • 只能使用父类的引用,访问父类的成员

大家有更好的方法,可以私信我哈;大家一块进步~

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言