Java是一个支持并发、基于类和面对象的编程语言。
面向对象的程序设计语言必须有描述对象及其相互之间关系的语言成分。这些程序设计语言可以归纳为以下几类:系统中一切事物皆为对象;对象是属性及其操作的封装体;对象可按其性质划分为类,对象成为类的实例;实例关系和继承关系是对象之间的静态关系;消息传递是对象之间动态联系的唯一形式,也是计算的唯一形式;方法是消息的序列。
从现实世界中客观存在的事物(即对象)出发来构造软件系统,并在系统构造中尽可能运用人类的自然思维方式,强调直接以问题域(现实世界)中的事物为中心来思考问题,认识问题,并根据这些事物的本质特点,把它们抽象地表示为系统中的对象,作为系统的基本构成单位(而不是用一些与现实世界中的事物相关比较远,并且没有对应关系的其它概念来构造系统)。这可以使系统直接地映射问题域,保持问题域中事物及其相互关系的本来面貌。
它可以有不同层次的理解:
从世界观的角度可以认为:面向对象的基本哲学是认为世界是由各种各样具有自己的运动规律和内部状态的对象所组成的;不同对象之间的相互作用和通讯构成了完整的现实世界。因此,人们应当按照现实世界这个本来面貌来理解世界,直接通过对象及其相互关系来反映世界。这样建立起来的系统才能符合现实世界的本来面目。
从方法学的角度可以认为:面向对象的方法是面向对象的世界观在开发方法中的直接运用。它强调系统的结构应该直接与现实世界的结构相对应,应该围绕现实世界中的对象来构造系统,而不是围绕功能来构造系统。
优点:
1、代码开发模块化
2、易于维护和修改
3、代码具有复用性、可靠性、灵活性和可阅读性。
特性:
封装、继承、多态、抽象
封装:给对象提供了隐藏内部特性和行为的能力。对象提供一些能被其他对象访问的方法来改变它内部的数据。在Java中public、private、protected三种修饰符给其他的位于同一个包或者不同包下面对象赋予了不同的访问权限。
好处:通过隐藏对象的属性来保护对象内部的状态;提高了代码的可用性和可维护性,因为对象的行为可以被单独的改变或者是扩展;禁止对象之间的不良交互提高模块化。
多态:给不同的底层数据类型做相同的接口展示的一种能力。一个多态类型上的操作可以应用到其它类型的值。
继承:给对象提供了从基类获取字段和方法的能力。提供了代码的重用性,可以在不修改类的情况下给现存的类添加新特性。
抽象:抽象是指强调实体的本质、内在的属性。在系统开发中,抽象指的是在决定如何实现对象之前的对象的意义和行为。使用抽象可以尽可能避免过早考虑一些细节。
Java面向对象编程(OOP)
最新推荐文章于 2024-07-17 15:37:07 发布