通俗地讲抽象类就是普通类和接口的结合,因为抽象类可以像普通类那样在类中实现方法,也可以像接口一样,只声明,不实现。抽象类不可以被实例化,也就是说不可以使用new关键字来创建对象。使用抽象类的好处在于,当有的方法在父类中不想实现时可以不实现。
1.抽象类方法
抽象类的对象不能由抽象类直接创建,只可以通过抽象类派生出新的子类,再由其子类创建对象。也就是说只需要给一个模板,可依据模板来创建一个新的对象。
当一个类被声明为抽象类时,要在这个类前面加上修饰符abstract。
抽象类方法包括一般方法和抽象方法。一般方法需要抽象类中的成员直接继承,实例化子类后,通过子类调用。抽象方法是以abstract修饰的方法,这种方法只声明返回的数据类型、方法名称和所需的参数,没有方法体,该方法只需要声明而不需要实现。当一个方法为抽象方法时,子类要实现父类的所有抽象方法,如果没实现抽象方法,其子类即为抽象类,即声明为abstract。
2.抽象类语法
定义抽象方法需要在方法的声明处使用关键字abstract。以下是一个抽象方法的基本格式:(www.xing528.com)
Abstract<方法返回值类型>方法名(参数列表)
其中,方法返回值类型和方法名为必选参数,方法值返回类型则是用于指定方法的返回值,类型若无,则使用关键字void来标识,而方法名则只要是合法的Java标识符即可。
例如,使用abstract class方式定义M:
3.抽象类作用
了解Java中的抽象类,抽象类在编程中有哪些作用?或者说为什么Java中会存在抽象类?
在面向对象方法中,抽象类主要用来进行类型例举。为创建一个用于固定组行为描述的抽象描述,但相对于其他所创建的这组抽象描述却可以具备多种可以实现形式。这个抽象描述就是抽象类,而具体实现形式则是派生类。对于所创建的模块,由于模块依赖于一个固定形式的抽象体,所以它是不允许修改的。为了能够实现面向对象设计的一个最核心的原则OCP(Open-Closed Principle),抽象类是其中的关键所在。而且抽象类往往用来表征对问题领域进行分析、设计中得出的抽象概念,是对一系列看上去不同但本质上相同的具体概念的抽象。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。