请解释一下这个计算机编程术语：多态性。
多态性（Polymorphism）是面向对象编程三大特性之一，指的是同一类对象在不同情况下表现出不同的行为方式。在多态性中，一个类可以具有多个不同的形式，即可存在多个不同名称的方法，但是这些方法参数的个数、类型以及返回值的类型必须不同。他们可以具有相同的名称、但在不同的上下文中执行不同的行为。多态性使得代码可以更加灵活和可扩展，减少了代码的重复性和冗余性。多态性分为编译时多态（静态多态）和运行时多态（动态多态）1.编译时多态：也称为静态多态。发生在编译代码期间。主要是函数重载的实现。2.运行时多态：也称为动态多态。发生在代码运行期间。主要是通过函数重写实现，即父类和子类之间的关系。常见的多态性的实现方式有：1.函数重载（Overlo