重写:子类对父类的方法进行重新的定义。(
当子类继承自父类的相同方法,输入数据一样,但要做出有别于父类的响应时,你就要覆盖父类方法,
即在子类中重写该方法——相同参数,不同实现(动态多态性)
)对一个方法的重写必须发生在具有继承关系的两个类中,即子类对父类方法的重写。
好比:老爸喜欢吃辣的东西,你继承了这个吃东西的功能,但是你喜欢吃甜的东西(重新定义吃东西)
例如:
public class Father(){
public void eat(){
System.out.println("吃辣的");
}
}
class Son() exends Father{
public void eat(){
System.out.println("吃甜的");
}
}
public static void main (String[] agrs){
Father f = Son();
f.eat();
}
输出的是 吃甜的
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
重载:简单说,就是函数或者方法有相同的名称,但是参数列表不相同的情形,这样的同名不同参数的函数或者方法之间,互相称之为重载函数或者方法。
(就是同样的一个方法能够根据输入数据的不同,做出不同的处理,
即方法的重载——有不同的参数列表(静态多态性))
参数不同是区分重载方法的关键。参数不同主要表现在以下几个方面。
(1)参数类型不同。例如:
public void method(String s);
public void method(int s);
(2)参数个数不同。例如:
public void method(String s,int i);
public void method(String s);
(3)参数顺序不同。例如:
public void method(String s,int i);
public void method(int i ,String s);
例如:
class Cat
{
void eat(){};//method_2
void eat(String fish){}; //method_3
}
结果:
method_2与method_3:
重载关系,再加一个参数列表不同方法名相同的方法。