抽象类_计算机软件及应用_IT计算机_专业资料.doc

抽象类_计算机软件及应用_IT计算机_专业资料.doc

ID:55678593

大小:77.50 KB

页数:9页

时间:2020-05-24

抽象类_计算机软件及应用_IT计算机_专业资料.doc_第1页
抽象类_计算机软件及应用_IT计算机_专业资料.doc_第2页
抽象类_计算机软件及应用_IT计算机_专业资料.doc_第3页
抽象类_计算机软件及应用_IT计算机_专业资料.doc_第4页
抽象类_计算机软件及应用_IT计算机_专业资料.doc_第5页
资源描述:

《抽象类_计算机软件及应用_IT计算机_专业资料.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、抽象类、接口和具体类三者之间的联系与区别在那些面向对象(object)的程序设计语言的概念中,类(class)指的是一种抽象的数据类型、是客观对象在人脑中的主观反映、是对象共性的抽象、类型相同事物数据的抽象。E以说,全部的对象都需要通过类来进行描述,但是全部的类却不一定都是用来对对象来进行描述的。如果某一个类中所包含的信息不足以用来描述一个具体的对象,那么我们就称其为抽象类(abstractclass)0抽象类是我们在对某一问题领域进行设计和分析时所得出的抽象概念,是一系列木质上相同,而外在形象各异的具体概念的抽象反映。在面向对象领域中,抽象类的主要作用就是进

2、行类型隐藏,是实现向对象设计的核心原则OCP(Open-ClosedPrinciple)的关键。1抽象类的有关概念通过abstract来完成的类就被称作为抽象类,最终通过了类来实现。如果说抽象类是一张设计图纸的话,那么了类就是根据这张设计图纸所生产出来的产品。总的来说,抽象类主要有以下几方面特点:1)抽象类不能创建对象。2)抽象类可以调用静态方法,同时不能对非静态方法进行调用。3)抽象类可以对一个引用进行声明。4)一个抽象类可以被子类继承,继承它的子类也可以是抽象类。5)抽象类与多态性是密不可分的。6)如果一个类用到了抽象方法,那么这个类必须是抽象类。但是一个

3、抽象类中却不一定要有抽象方法。抽象类是Java中最为常用的语法之一,在开发过程中,它的主要作用就是抽象出某些了类的共性,由于在抽象类中仅对方法的作用进行说明,因此在使用不同的了类时,实现的方法是不一样的,这就是方法实现的个性。抽象类中不一定要有抽象方法,但是大多数抽象类都含有可以让子类集成的抽象方法,如果在继承过程中,了类没有将抽象类中全部的抽象方法重均,那么这个了类就会变为抽象类;如果了类完成了全部抽象方法的重写,那么就可以完成自身的实例化。在日常生活中,事物的功能都是确定的,因此现实中的类大多属于抽象类,只不过它的实现是基木都是通过了类来完成。因此,抽象类

4、不能独立存在,但如果在创建了类时,先完成父类的构建也是可行的。可以说,抽象类就是一个标准,其作用在于对某类事物的方法进行定义,使其可以被不同的了类继承和实现。所以,对于调用者来说,只需要了解抽象类的方法定义就可以实现对不同子类的调用。2接曰的有关概念接II(interfaces)指的是Java中的--系列方法的声明,它包含了方法的特征,但是不包括对这种方法的实现,其原因就在于这些方法可以在不同的地方由不同的类实现,从而具备不同的功能。通过接口,我们可以实现多继承,但这也只是接口众多功能中的一个。由于接11属于类的附加信息,因此这种多继承功能并不会对类的单继承造

5、成任何影响。接11是对事物共性进行再一次抽象的过程,任何对象都不可能是单个类型的,但是对象的多类型却存在着…个主次关系,其中,主要的做成类包括输入和存储设备,次要的就做成接II,包括usb设备等。接口为我们提供了一个标准,让方法的使用和实现者之间能够形成一种弱耦合关系,由于接II中所包含的都是抽象方法,因此从本质上来看,接I【就是一种解耦合工具。当若干个父接口同时指向某一个实现类的对象时,那么它们所能够调用的就是该接曰正在引用的方法。总的来说,接口主要有如下特征:1)接U实际上也属于抽象类的范畴。2)接口同样可以被继承,当它被一个类继承时,需要使用implem

6、ents;当它被接口继承时,了接曰会被归入抽象类的范畴,不需要实现。另外,接口也E以实现多继承。3)在一个接曰文件中,只能存在一个公开的接口。3抽象类与接口的区别和联系通过上面的介绍我们可以知道,抽象类和接口在Java语言中属于两种不同的、但是都支持类定义的机制,它们的存在使Java具备了强大的功能。抽象类和接II在支持抽象类的定义方而具有较高的相似性,在有些情况下共至是可以相互代替的;但是接曰的作用确实用来实现多继承,一个类只可以有-•个父类,但是却可以对应多个接II,由于接II不涉及实现,因此它所描述的只是公共行为。从这点上看,接口在抽象化程度方而比抽象类

7、的更高。接口中所包含的方法可以是公开和抽象的,但是它不能有构造器,只能包含final属性、静态和publico接口将方法的特征和实现分割开来,这种分割使接口具有了相关的操作和属性,最终通过类来对其进行实现。一个接曰的实现类是可以多种多样的,除了要求类具有实现该接曰的功能外,这种实现并不会对类提出更多的要求。接口提供了方法调用以及关联上的可插入性,软件系统的生命周期越长、规模越大,接II提供的可扩展性和灵活性也就越多,使可插入性得到更多的保证。abstractclass和interface是Java语言中对于抽象类定义进行支持的两神机制,正是由于这两种机制的存在

8、,才5K予了Java强大的面向对象能力

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。