什么是抽象:抽象是处理对象复杂性的一种技术,它只关注对象的主要细节而忽略了对象的次要细节。
1. 类和方法都要被关键字abstract去修饰
2. 抽象的方法不用去实现而只要声明一下就可以了
3. 抽象类不可以去实例化,也就是不能去new
4.
一个类中如果含有抽象方法,那么这个类就必须被声明为抽象
类,
继承它的子类必须去覆写这个抽象方法才可以被实例化,
如果没有实现父类中所有的抽象方法,那么子类也必须定义为抽象类.否则编译出错.
5、没有抽象构造方法,也没有抽象静态方法。
如:abstract class Base{
abstract Base(){ } //编译出错,构造函数不能是抽象的。
static abstract void method1(); //编译出错,static 和abstract是不能连用的。
}
6、抽象类中可以有非抽象的构造方法,创建子类的同时可以调用这些构造方法。
父类的构造方法不能被子类继承。但可以通过super语句调用父类的构造方法。而且假设在子类的构造方法中有super语句,它必须作为构造方法的第一条语句。
7、抽象类及抽象方法不能被final修饰符修饰。abstract修饰符与final修饰符不能连用。(final修饰的类不允许有子类)