什么是重写
|
个 人理解: | 重写即覆盖,是关于基类和派生类的关系。在基类的基础上,派生类继承基类的方法也可加入自己新的属性行为。 |
---|---|
官方理解: | 在Java和其他一些高级面向对象的编程语言中,子类可继承父类中的方法,而不需要重新编写相同的方法。但有些子类不想原封不动的继承父类,想做一定的修改,这就需要用到重写。 |
为什么又叫覆盖?
子类跟父类使用相同的参数类型、个数,则新方法将把父类的方法覆盖掉;若想要使用原来父类里的方法,则可用关键字super,该关键字引用了当前类的父类
重写的作用?
增强类的重用性和复用性,是对方法的可扩充。因为继承的是父类的方法,不仅得到父类的东西,还可以加入自己的东西。
什么是重载
简单地说,就是方法名相同,但其参数个数、参数类型和顺序不同。作用在同一个访问区,同一个类中可以允许有2个或2个以上的方法名相同的,只要其参数不同即可。
重载的作用?
方便程序员可以根据不同的参数类型、个数和顺序而调用同一个方法名,而编译器则会根据其参数的不同自动匹配调用不同的函数。这样一来就省去了写方法名或函数名的步骤,也就是说不用为了不同的参数类型或参数个数而多写个函数名。
什么是多态
多态 | 同一行为具有多种不同的表现形式,可以使程序有良好的扩展性。虚函数的存在是为了多态,某个函数具有虚函数的特征,加上final关键字变成非虚函数。 |
---|---|
与重写/重载的联系 | 多态分为运行时多态(重写)、编译时多态(重载)) |
多态的作用?
简单来说,就是提高了代码的可扩展性,同一操作作用于不同的对象可以产生不同的结果