abstract

更新时间:2024-09-10 10:43

abstract修饰符可以用于类、方法、事件和索引指示器(indexer),表示其为抽象成员,抽象方法是没有方法体的方法。抽象成员,即抽象类抽象方法、抽象事件。

说明

抽象的。类似像见微知著、一叶知秋的意思,这是在神秘学里面一个非常重要的概念,就是所有的符号、图像、文字、咒语等等的背后,都还包含有更多、更大、更深、更远的意义,而需要学习者用心去体会、感觉、并思量,才可以深究其意义,并化为自己的一部份,才能好好的来使用它。

abstract 不可以和static、virtual、final、native一起使用

声明为 abstract 成员可以不包括实现代码,但只要类中还有未实现的抽象成员(抽象方法),那么这个类就是一个抽象类,抽象类的对象不能被实例化,通常作为被强制继承类必须实现某一成员,抽象类必须要有派生子类。并且,如果子类没有实现抽象类的所有方法,则子类也成为一个抽象类。

抽象修饰符

抽象类

当一个类被声明为abstract时,这个类被称为抽象类。所谓的抽象类就是没有实例对象的类。

java中定义抽象类是出于相同考虑。抽象类是它的所有子类的公共属性的集合,所以抽象类的一大优点就是充分利用公共属性来提高开发和维护程序的效率。

抽象方法

作为修饰符,abstract声明了一种没有具体对象的,出于组织概念的层次关系需要而存在的抽象类;作为类方法修饰符,abstract则声明了一种仅有方法头,而没有具体操作实现的方法体的抽象方法。

如:

abstract Boolean goVacation(int days);

可见,abstract方法只有方法头的声明,而用一个分号来代替方法体的定义;至于方法体的具体实现,那是由当前类的不同子类在他们各自的类定义中完成的。

典型例子

public abstract class MyAbstractClass {

public void test1(){} // 一个正常的方法

public abstract void test2(); // 一个抽象方法。

}

提示,如果JAVA类的任何一个方法是abstract的,则类本身必须是abstract的。

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}