利用方法的覆盖(overriding)和重载(overloading)

覆盖(overriding)和重载(overloading)是JAVA语言的两种重要特征:
覆盖允许你修改从父类继承下来的方法的行为重载允许你用相同的方法名实现不同的功能。
这个也许大多说人都知道了我要说的是需要注意的一点自从J2SE5。0以后。覆盖一个方法的
返回类型可以是父类返回类型的子类(如果是原返回类型是接口中,那么可以是接口的实现类)比如:
覆盖的特点提一下吧:方法名完全相同、返回值类型相同、参数的个数和类型以及它们的顺序完全相同.
package com.awt.test;

class SourceType {
public Number getTypes(int m, int n) {

return m + n;

}

}

public class TestRentrnType extends SourceType {
// /(方法的覆盖)
@Override
public Integer getTypes(int m, int n) {

return m + n;

}

}上面这段程序也算是一个合法方法重载。看似他们返回值不同。但因为Integer是Number的
子类所以是正确。注意:只能是数据类型的包装类。不能是原始数据类型。。比如把Integer如果你改成int它就是错的。因为int 是原始的基本数据类型。不是包装类

你可能感兴趣的:(overloading)