方法重写:
- 子类出现了和父类中一样的方法声明,方法名和参数列表一样;
- 方法重写可以沿袭父类的功能,又能定义子类特有的内容;
- Override注解可以用来检测当前的方法,是否是重写的方法。
方法重写注意事项:
- 私有方法不能被重写,私有成员不能被外界访问,所以不能继承;
- 子类重写方法访问权限不能降低(public > 默认 > 私有),必需大于等于父类;
- 静态方法不能被重写,如果子类也有相同的方法,不属于方法重写。
fianl关键字 :
- final代表最终的意思,可以修饰方法,变量和类。
- 修饰类:该类不能被继承;
- 修饰方法:该方法不能重写,不希望子类重写的方法,可以用fianl修饰;
- 修饰基本数据类型的变量:表明该变量是一个常量,不能再次赋值;
- 修饰引用数据类型的变量:地址值不可改变,地址内的数据可以改变;
抽象类:
- 有些方法在父类中不能具体明确,需要子类单独进行重写,这个时候就需要抽象类了;
- 抽象方法是没有方法体的方法,一个类中如果有抽象方法,该类必须定义为抽象类。
抽象类的特点:
抽象类和抽象方法必须使用abstract 关键字修饰
//抽象类的定义 public abstract class 类名 {} //抽象方法的定义 public abstract void eat();抽象类中不一定有抽象方法,但有抽象方法的类一定是抽象类;
抽象类可以有构造方法,但不能创建对象;
抽象类的子类,要么重写抽象类中的所有抽象方法,要么是抽象类,抽象方法终将重写。
版权声明:本文为m0_62091368原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。