abstract class(抽象类)
- $Why?$
- 在多继承层次中,当一个个新子类的定义,类变得越来越具体,而父类则更为一般化。所以类的设计应该保证父类和子类能够共享特征,有时候将一个父类设计得非常抽象,以至于他没有具体的实例,这样的类叫做抽象类。
- 用$abstract$修饰一个类时,这个类叫做抽象类;用$abstract$修饰一个方法时,该方法叫做抽象方法:其中抽象方法,只有方法的声明,但是没没有方法体的实现,以分号结束。
abstract int abstractMethod(int x);
-
抽象类不能被实例化,一般作为父类被继承。抽象的子类必须重写父类的方法,并提供方法体。若没有重写全部的抽象方法,仍为抽象类。
- 不能用$abstract$修饰属性、私有方法、构造器(不能直接创建抽象类的实例对象,$new Class()$是非法的)、静态方法、$final$的方法。$final$修饰的类就是最终的类,不能被继承;而抽象类想要使用需要继承。
- 只要有一个抽象方法,类就是抽象类。
作者:Ryanjie
出处:http://www.cnblogs.com/ryanjan/
本文版权归作者和博客园所有,欢迎转载。转载请在留言板处留言给我,且在文章标明原文链接,谢谢!
如果您觉得本篇博文对您有所收获,觉得我还算用心,请点击右下角的 [推荐],谢谢!