初识Java(Java类和对象-面向对象概述) 2022-05-27 15:28 162阅读 0赞 ### 一、面向对象概述 ### 面向对象思想是人类最自然的一种思考方式,它将所有预处理的问题抽象为对象,同时了解这些对象具有相应的属性以及展示这些对象的行为,已解决这些对象面临的一些实际问题,这样就在程序开发中引入了面向对象设计的概念,面向对象设计实质上就是对现实世界的对象进行建模操作。 1.1 对象 现实世界中,随处可见的一种事物就是对象,对象是事物存在的实体,如人类、书桌、计算机等。人们解决问题的方式总是把复杂的事情简单化,思考这些对象都是由哪些部分组成的。通常都会将对象划分为两个部分,即静态部分与动态部分。静态部分,这个部分称为 " 属性 " ,任何对象都会具备其自身属性,如一个人,其属性包括高矮、胖瘦、性别、年龄等等。这个人可以哭哭泣、微笑、说话、行走,这些事这个人具备的行为(动态部分)。人类通过探讨对象的属性和观察对象的行为了解对象。 在计算机的世界中,面向对象程序设计的思想要以对象来思考问题,首先要将现实世界的实体抽象为对象,然后考虑这个对象具备的属性和行为。 1.2 类 不能将所谓的一个事物描述成一类事物,如一只鸟不能称为鸟类。如果需要对同一类事物统称,那就类。 类就是同一类事物的统称,如果将显示世界中的一个事物抽象成对象,类就是这类对象的统称,如鸟类、人类等。类是构造对象时所依赖的规范,如一只鸟具有一对翅膀,它可以用这对翅膀飞行,而基本上所有的鸟都具有有翅膀这个特征和飞行的技能,这样具有相同特性和行为的一类事物就称为类。类是世间事物的抽象称呼,而对象则是这个事物相对应的实体。如果面临实际问题,通常需要实例化类对象来解决。 类是封装对象的属性和行为的载体,反过来说具有相同属性和行为的一类实体称为类。 在 Java 语言中,类中对象的行为是以方法的形式定义的,对象的属性是以成员变量的形式定义的,而类包括对象的属性和方法。 1.3 封装 面向对象程序设计具有以下特点 : ( 1 ) 封装性 ;( 2 ) 继承性 ; ( 3 ) 多态性 。 封装是面向对象编程的核心思想。将对象的属性和行为封装起来,其载体就是类,类通常对客户隐藏其实现细节,这就是封装的思想。例如,用户使用计算机时,只需要使用手指敲击键盘就可以实现一些功能,无须直到计算机内部是如何工作的,即使可能直到计算机的工作原理,但在使用计算机时也并不完全依赖于计算机工作原理这些细节。 采用封装的思想保证了类内部数据结构的完整性,应用该类的用户不能轻易地直接操作此数据结构,只能执行类允许公开的数据。这样就避免了外部操作对内部数据的影响,提高了程序的可维护性。 1.4 继承 类与类之间同样具有关系,如一个百货公司类与销售员类相联系,类之间的这种关系被称为关联。关联主要描述两个类之间的一般二元关系,例如,一个百货公司类与销售员类就是一个关联,学生类与教师类也是一个关联。两个类之间的关系有很多种,继承是关联中的一种。 当处理一个问题时,可以将一些有用的类保留下来,在遇到同样问题时拿来复用。设计软件的代码使用继承思想可以缩短软件开发的时间,复用那些已经定义好的类可以提高系统性能,减少系统在使用过程中出现错误的几率。 继承性主要利用特定对象之间的共有属性。例如,平行四边形是四边形,正方形、矩形也都是四边形,平行四边形与四边形具有共同特性,就是拥有 4 个边,可以将平行四边形类看做四边形的延伸,平行四边形复用了四边形的属性和行为,同时添加了平行四边形独有的属性和行为,如平行四边形的对边平行且相等。这里可以将平行四边形类看作是从四边形类中继承。在 Java 语言中将类似于平行四边形的类称为子类,将类似于四边形的类称为父类或超类。可以说平行四边形是特殊的四边形,但不能说四边形是平行四边形,也就是说子类的实例都是父类的实例,但不能说父类的实例是子类的实例。 继承关系可以使用树形关系来表示,父类与子类存在一种层次关系。一个类处于继承体系中,它既可以是其他类的父类,为其他类提供树形和行为,也可以是其他类的子类,继承父类的属性和方法。 1.5 多态 将父类对象应用于子类的特征就是多态。以图形类来说明多态,每个图形都拥有绘制自已的能力,这个能力可以看做是该类具有的行为,如果将子类的对象统一看做是父类的实例对象,这样当绘制图形时,简单地调用父类也就是图形类绘制图形的方法即可绘制任何图形,这就是多态基本的思想。 多态性允许以统一的风格编写程序,以处理种类繁多的已存在的类及相关类。该统一风格可以由父类来实现,根据父类统一风格的处理,可以实例化子类的对象。由于整个事件的处理都只依赖于父类的方法,所以日后只要维护和调整父类的方法即可,这样降低了维护的难度,节省了时间。 多态的实现并不依赖具体类,而是依赖于抽象类和接口。 图形类作为所有图形的父类,具有绘制图形的能力,这个方法可以称为“ 绘制图形 ”,但如果要执行这个“ 绘制图形 ”的命令,没有人知道应该画什么样的图形,并且如果要在图形类中抽象出一个图形对象,没有人能说清这个图形究竟是什么图形,所以使用“ 抽象 ”这个词来描述图形类比较恰当。在 Java 语言中称这样的类为抽象类,抽象类不能实例化对象。在多态的机制中,父类通常会被定义为抽象类,在抽象类中给出一个方法的标准,而不给出实现的具体流程。实质上这个方法也是抽象,如图形类中的“ 绘制图形 ”方法只提供一个可以绘制图形的标准,并没有提供具体绘制图形的流程,因为没有人知道究竟需要绘制什么形状的图形。 在多态的机制中,比抽象类更方便的方式是将抽象类定义为接口。由抽象方法组成的集合就是接口。接口的概念在现实中也极为常见,如不同的五金商店买来螺丝帽和螺丝钉,螺丝帽很轻松地就可以拧在螺丝钉上,可能螺丝帽和螺丝钉的厂家不同,但这两个物品可以轻易地组合在一起,这是因为生产螺丝帽和螺丝钉的厂家都遵循着一个标准,这个标准在 Java 中就是接口。可以将“ 绘制图形 ”作为一个接口的抽象方法,然后使图形类实现这个接口,同时实现“ 绘制图形 ”这个抽象方法,当三角形类新药绘制时,就可以继承图形类,重写其中的“ 绘制图形 ”方法,并改写这个方法为“ 绘制三角形 ”,这样就可以通过这个标准绘制不同的图形。 欢迎大家提出错误,建议,大家一起进步。 文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。
相关 JavaScript对象及初识面向对象 第一题 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <tit 谁践踏了优雅/ 2021年11月23日 12:10/ 0 赞/ 169 阅读
相关 01 面向对象之:初识。 一. 面向对象初识 1.1 回顾面向过程编程vs函数式编程 ![ContractedBlock.gif][] ![ExpandedBlockStart.gif][] 蔚落/ 2021年12月23日 20:01/ 0 赞/ 141 阅读
相关 初识类和对象 python中一切皆为对象,类型的本质就是类。 类的相关知识 def functionName(args): '函文档字符串' ''' class类名 灰太狼/ 2021年12月24日 18:19/ 0 赞/ 196 阅读
相关 C++类与对象初识 引入:在我们编程语言中,想必大家都应该听说过面向过程编程与面向对象编程,那么到底什么是面向过程编程什么是面向对象编程呢?对于这个问题我想大家都应该听我们的老师讲过一个生动而又形 青旅半醒/ 2022年02月03日 12:13/ 0 赞/ 216 阅读
相关 HTML-JavaScript对象及初识面向对象 对象是什么 ![70][] 对象是包含相关属性和方法的集合体(属性)(方法) 什么是面向对象 1.面向对象仅仅是一个概念或者编程思想 2.通过一种叫做原型的方式来实现 刺骨的言语ヽ痛彻心扉/ 2022年05月12日 16:00/ 0 赞/ 86 阅读
相关 初识Java(Java类和对象-对象) 一、对象 Java 是一门面向对象的程序设计语言,对象时由类抽象出来的,所有的问题都通过对象来处理,对象可以操作类的属性和方法解决相应的问题,所以了解对象的产生、操作和消 亦凉/ 2022年05月26日 07:48/ 0 赞/ 183 阅读
相关 初识Java(Java类和对象-对象的引用) 一、对象的引用 在 Java 语言中尽管一切都可以看做对象,但真正的操作标识符实质上是一个引用,那么引用在 Java 中是如何体现的呢? 语法 :类名 对象引用名 朱雀/ 2022年05月26日 10:43/ 0 赞/ 176 阅读
相关 初识Java(Java类和对象-面向对象概述) 一、面向对象概述 面向对象思想是人类最自然的一种思考方式,它将所有预处理的问题抽象为对象,同时了解这些对象具有相应的属性以及展示这些对象的行为,已解决这些对象面临的一些实 悠悠/ 2022年05月27日 15:28/ 0 赞/ 163 阅读
相关 初识Java(Java类和对象-类) 一、类 类是封装对象的属性和行为的载体,而在 Java 语言中对象的属性以成员变量的形式存在,对象的方法以成员方法的形式存在。 1.1 成员变量 在 Java 向右看齐/ 2022年05月27日 16:58/ 0 赞/ 172 阅读
相关 面向过程和面向对象,类和对象 1. 1面向过程和面向对象 顾名思义,前者Procedure Oriented是一种以过程为中心的编程思想,Object Oriented,简称OO,而是以事物为中心的编程 古城微笑少年丶/ 2022年07月27日 21:50/ 0 赞/ 113 阅读
还没有评论,来说两句吧...