java中方法的重载与重写易混,之前虽然记了好多遍,但没过多久又会忘记,今天彻底将它
们区分!
一、
重载发生在一个类中的多个方法之间,重写也是发生在方法之间,但是重写发生在不同类
中,要有继承关系,也就是说重写发生在子类与父类方法名相同的方法上。
二、
重写:在子类的类体中如果出现与超类的方法名称相同,参数个数,返回类型,参数类型都相同,
就表明子类重写了超类的这个方法
注意:重写依赖於继承关系,也就是说如果超级被子类继承之后,子类就可以重写超类非
private的实例方法,静态方法是不存在重写的. 【如果子类中出现方法名称和父类中相同的,
但是父类中的方法是private,不能说是重写,这样父类中的方法和子类中的方法没有任何
联系,子类中的方法只能说是一个单独的方法】
三、
以上只是明白了重载和重写,怎样将它们长久的记忆:因为重写发生在子类与父类中,而且
要求方法名称相同,参数个数,返回类型,参数类型都相同,这么多的条件,为了避免出错我们可以
使用注解@Override{注解【Annotation】:jdk1.5中的新特性},注解可以应用在方法上、类
上、属性上,它们的作用范围又可以分为源代码、.class文件、Runtime,有了注解那么就意味
着注解中也会有属性的出现,这样有可以联想到枚举{枚举【enum】:也是jdk中的新特性}!
这次不会忘了!当然了,对于注解和枚举的具体应用,还得要看文档了…………