abstract [修饰符](() 可以用于类、方法、属性、事件和索引指示器(indexer),表示其为抽象成员,抽象方法是没有方法体的方法。
abstract 不可以和[static](()、virtual、[final](()、native一起使用
声明为 abstract 成员可以不包括实现代码,但只要类中还有未实现的抽象成员(抽象方法),那么这个类就是一个[抽象类]((),抽象类的对象就不能被实例化,通常用于强制继承类必须实现某一成员.抽象类是必须要派生子类的。并且,如果子类没有实现抽象基类的所有方法,则子类也成为一个抽象类。
java中定义抽象类是出于相同考虑。抽象类是他的所有子类的公共属性的集合,所以抽象类的一大优点就是充分利用公共属性来提高开发和维护程序的效率。
二、abstract例子
public abstract class MyAbstractClass {
public void test1(){ // 一个正常的方法
}
public abstract void test2(){ // 一个抽象方法。
}
提示,如果JAVA类的任何一个方法是abstract的,则类本身必须是abstract的。
三、在Android的用法
抽象类和抽象方法的使用可以使业务逻辑更清晰,自然而然的提高开发和维护程序的效率
安卓主要有activity,fragment所以常用的抽象类针对这两个来做
下面写一个在安卓中用到的抽象类
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
public abstract c