java — 抽象abstract 和 最终 final
Posted whc0305
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java — 抽象abstract 和 最终 final相关的知识,希望对你有一定的参考价值。
java — 抽象abstract 和 最终 final 修饰符
一、抽象类和抽象方法
抽象类:由于许多对象都有共同的属性和方法,产生了代码冗余,抽象类做的就是将这些类共同的方法和属性 抽取 出来,变成了一个类,那就是抽象类。
和 父类 很像对不对,其实抽象类就是父类中的一种,必须被继承才能完美使用的一种类。
1. 抽象类的声明
[访问修饰符] abstract class 类名 { //方法体 }
2. 抽象方法的声明
[访问修饰符] abstract 返回值类型 方法名 (形参类型 形参名,......);
注意:
- 抽象方法没有方法体,即没有花括号
- 想要使用抽象方法,必须要被在子类中进行重写
- 抽象方法中不能用 private ,static 和 final 进行修饰
3. 抽象方法 和 抽象类 的注意事项
-
-
- 抽象方法必须放在抽象类中
- 抽象类中 可以 有普通方法和抽象方法,但并不是一定要有
-
4. 抽象类的注意事项
-
-
- 抽象类只能被继承,不能实例化
- 若子类为普通类并继承了抽象类,则 必须重写 抽象类中全部的抽象方法。如果没有全部重写,那就将子类变成抽象类
- 当一个类实现了一个接口时,则 必须重写 接口中全部的抽象方法。如果没有全部重写,那就将那个类变成抽象类
-
二、 最终修饰符 final
- 用 final 修饰 变量 时:
- 这个变量在 声明 时就必须被初始化,或者在构造器中赋值
- 在初始化完成后,不能再被赋值,即为固定常量
- 用 final 修饰 方法 时:
- 该方法不能被重写
- 不能修饰抽象方法
- 用 final 修饰 类 时:
- 该类不能被继承
以上是关于java — 抽象abstract 和 最终 final的主要内容,如果未能解决你的问题,请参考以下文章