abstract关键字
1.抽象方法
使用abstract关键字修饰的方法被称为抽象方法。抽象方法没有具体的方法实现。
格式:public abstract 返回值类型 方法名();
2.抽象类
使用abstract关键字修饰的类被称为抽象类。
格式:public abstract class 类名{}
有抽象方法的类一定是抽象类,但是抽象类不一定有抽象方法。
抽象类不能被实例化。抽象类的子类必须重写父类中的所有抽象方法或者子类本身也是一个抽象类。
3. 不能与abstract共用的关键字
1.private关键字
被private修饰的方法表示私有,不允许子类访问,而被abstract修饰的方法必须要被子类覆盖重写才能使用,所以二者矛盾。
2.final关键字
被final修饰的类不能被继承,而abstract修饰的类只有在被子类继承并覆盖重写后才能使用,二者矛盾。
3.static关键字
被static修饰的方法属于类,可以直接通过类名.方法名的方式调用,而被abstract修饰的类没有方法体,不能进行调用。