java学习到继承,老师问到重载和重写的区别。弄懂了之后来整理下。我们从代码来看他们的区别。
public abstract class ceshi {
public void chongxie() {
System.out.println("我是重写");
}
}
public class ceshi1 extends ceshi
{
@Override
public void chongxie() {
System.out.println("我被重写了");
}
public String ceshi1(String a) {
System.out.println("我是重载");
return a;
}
public int ceshi1(int a) {
System.out.println("我被重载了");
return 0;
}
从上面我们可以看出ceshi类里的chongxie的方法被ceshi的子类给重写了,他们的方法名一样,返回类型一样,参数列表一样,方法体不一样。
我们对ceshi1的构造方法进行重载,对比两个ceshi1可以看出,方名一样,返回类型不一样,参数列表不一样,方法体不一样。并且重载的载一个类里面。
我们这样就可以给出重写和重载的定义。