java-抽象类的特点

别说谁变了你拦得住时间么 提交于 2020-03-10 19:43:57

1、抽象类和抽象方法必须用abstract关键字修饰。

-  abstract class 类名()
-  public abstract void eat();

2、抽象类不一定有抽象方法,有抽象方法的类一定是抽象类或者是接口。

-  一个抽象类如果没有抽象方法,是可以定义为抽象类的。这么做的目的只有一个,就是不让其他类创建本类对象,交给子类完成。

3、抽象类不能实例化。那么抽象类如何实例化呢?

-  按照多态的方式,由具体的子类实例化。其实这也是多态的一种,抽象类多态。

4、抽象类的子类

-  要么是抽象类

-  要么重写抽象类中的所有抽象方法

5、abstract不能和哪些关键字共存?

-  abstract和static

*  被abstract修饰的方法没有方法体。

*  被static修饰的方法可以用类名.调用,但是类名.调用抽象方法是没有意义的。

-  abstract和final

*  被abstract修饰的方法强制子类重写

*  被final修饰的方法不让子类重写,所以他两是矛盾的

-  abstract和private

*  被abstract修饰是为了让子类看到并强制重写

*  被private修饰不让子类访问,所以他两是矛盾的

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!