重载(overload)和重写(override) --------(个人理解)
重载:
1、方法重载是让类以统一的方法处理不同类型数据的一种数段,多个同名函数同时存在,具有不同的参数类型(方法类名相同,参数列表不同);
2、无返回类型;
3、构造函数常用重载;
4、Overloading 是一个类中多态性的表现,调用方法时通过传递给它们不同的参数个数和参数类型来决定使用的方法。
例如:
两个类,一个有参,一个无参。
public class 项目经理 {
public 项目经理(String name,int worknumber,int salry,int money) {
this.name = name;
this.worknumber = worknumber;
this.salry = salry;
this.money = money;
}
public 项目经理() {
}
}
重写:
1、子类定义某方法与父类有相同的名称和参数,则认为该方法被重写,方法重写又为方法覆盖;
2、如需父类中原有的方法,可用关键字super调用当前类的父亲的方法;
3、调用对象方法的机制;
例如:
类名相同,方法改变。
public class 项目经理 {
......
public void work() {
System.out.println("我是卡卡员工,工作为监督");
}
.......
}
public class 程序员类 extends 项目经理 {
/*
* @see 项目经理#work()
* override 重写 (覆盖)
* overload 重载
*/
public void work() {
super.work(); // 子类当中指向父类的方法
System.out.println("我是huawei员工,工作为设计代码");
}
......
}