前言
抽象类是什么?
本文中的抽象类表示的是一个抽象体,并非直接从abstract class翻译而来,而abstract class仅仅是Java语言中用于定义抽象类的一种方法,请读者注意区分) 在面向对象的概念中,所有的对象都是通过类来描绘的,但是并不是所有的类都是用来描绘对象的,如果一个类中没有包含足够的信息来描绘一个具体的对象,这样的类就是抽象类。 抽象类的定义
为什么要有抽象类?
在面向对象领域,抽象类主要用来进行类型隐藏。我们可以构造出一个固定的一组行为的抽象描述,但是这组行为却能够有任意个可能的具体实现方式。这个抽象描述就是抽象类。 这一组任意个可能的具体实现则表现为所有可能的派生类(子类),模块可以操作一个抽象体。由于模块依赖于一个固定的抽象体,因此它可以是不允许修改的;同时,通过从这个抽象体派生,也可扩展此模块的行为功能。 如何进行抽象类的定义?抽象类(abstract class)和接口(Interface)在Java语言中都是用来进行抽象类定义的两种主要方法 抽象类(abstract class)
定义:包含抽象方法的的类是abstract class
作用:abstractclass是为了把相同的东西提取出来,即重用 使用abstractclass语法规定
Interface
定义:比abstract class更加抽象,是一种特殊的abstract class
作用:Interface是为了把程序模块进行固化的契约,是为了降低偶合
实例
二者的相同点都不能被实例化 二者的区别
总结本文对抽象类(abstract class)和接口(Interface)进行了简单的总结,有兴趣可以继续关注Carson_Ho的安卓开发笔记,不定期分享关于安卓开发的干货 |
|