面向对象的特点Java中面向对象三大特征

面向对象的特点  时间:2021-09-14  阅读:()

面向对象方法的主要特征有哪些?

面向对象方法的主要特征有: 1、封装性 封装是一种信息隐蔽技术,它体现于类的说明,是对象的重要特性。

封装使数据和加工该数据的方法(函数)封装为一个整体,以实现独立性很强的模块,使得用户只能见到对象的外特性(对象能接受哪些消息,具有那些处理能力),而对象的内特性(保存内部状态的私有数据和实现加工能力的算法)对用户是隐蔽的。

2、继承性 继承性是子类自动共享父类之间数据和方法的机制。

它由类的派生功能体现。

一个类直接继职其它类的全部描述,同时可修改和扩充。

3、多态性62616964757a686964616fe4b893e5b19e31333433623133 对象根据所接收的消息而做出动作。

同一消息为不同的对象接受时可产生完全不同的行动,这种现象称为多态性。

利用多态性用户可发送一个通用的信息,而将所有的实现细节都留给接受消息的对象自行决定,如是,同一消息即可调用不同的方法。

扩展资料 面向对象方法的优越性 (1)强调从现实世界中客观存在的事物(对象)出发来认识问题域和构造系统,这就使系统开发者大大减少了对问题域的理解难度,从而使系统能更准确地反映问题域。

(2)运用人类日常的思维方法和原则(体现于OO方法的抽象、分类、继承、封装、消息通讯等基本原则)进行系统开发,有益于发挥人类的思维能力,并有效地控制了系统复杂性。

(3)对象的概念贯穿于开发过程的终,使各个开发阶段的系统成分具良好的对应,从而显著地提高了系统的开发效率与质量,并大大降低系统维护的难度。

(4)对象概念的一致性,使参与系统开发的各类人员在开发的各所段具有共同语言,有效地改善了人员之间的交流和协作。

(5)对象的相对稳定性和对易变因素隔离,增强了系统的应变能力。

(6)对象类之间的继承关系和对象的相对独立性,对软件复用提供了强有力的支持。

面向对象方法的主要特征有哪些?

面向对象的编程语言(Object-oriented Programming Language)是专门为面向对象观念而发展出来的,通过它可以便捷地实现面向对象的封装、继承、多态等特性。

1.封装

封装是一种信息隐藏技术,即对象内部对用户是隐藏的,不可直接访问;用户只能见到对象封装界面上的信息,通过对象的外部接口访问对象。

封装的目的在于将对象的使用者和对象的设计者分开,使用者无须知道对象内部实现的细节,只需要知道对象接收的消息即可。

当用户向对象发送消息后,对象将根据收到的消息来调用内部方法以做出响应。

在C++语言中,对象的构成由类来描述,每个类的成员可以分为私有和公有两种类型,对象的外部不能直接访问对象的私有部分。

对象的封装特性可以提高模块之间的独立性,使得系统易于调试和维护。

假设应用系统中有两个模块:一个模块从计算机的串行通讯口接收数据,放入缓冲区;另一个为数据处理模块。

数据处理模块可以直接访问缓冲区,从缓冲区中读取数据。

此时这两个模块之间的关联程度密切,模块独立性很差。

如果接收数据的模块改变缓冲区的管理方法,则第二个模块必须做相应的改变。

如果数据处理模块对缓冲区操作有误,将影响数据接收模块,在程序调试时难以确定错误发生在哪一个模块中。

实际上,数据处理模块并不需要缓冲区的管理信息,它只需要知道缓冲区中有没有数据以及有什么样的数据。

上面的处理方法违反了软件工程中的信息隐藏原则,数据处理模块访问了它不需要的信息。

将数据接收模块封装为一个对象,缓冲区的管理信息作为其私有数据,即可避免上面的问题。

数据接收模块只要提供一个从缓冲区获得数据的接口即可。

数据处理模块只能访问该接口,而不能直接操作缓冲区。

此时两个模块之间的独立性提高,如需改变缓冲区的管理方法,只需修改数据接收模块,数据处理模块将不受任何影响,因为数据接收模块提供的外部接口没有改变。

2.继承

人们在对客观世界的事物进行描述时,经常采取分类的方法。

类是有层次的,即某个大类的事物可能分为若干小类,而这些小类可能又分为若干个更小的类。

面向对象思想采纳了事物分类的层次思想,在描述类的时候,某些类之间具有结构和行为的共性。

例如教师类与学生类,在结构方面均具有姓名、年龄、身高、体重等,在行为(或操作)方面均具有回答身高、回答体重等操作。

将这些共性抽取出来,形成一个单独的类--人,描述教师类和学生类中的共性。

类(人)的结构特征和行为特征可以被多个相关的类共享,例如教师类和学生类继承了人的结构和行为特征。

在C++语言中,通过类的派生机制来实现类的继承,可以从一个类中派生出一个新的类,这个类称为派生类的基类或父类,派生出的新类称为基类的派生类或子类。

派生类的对象具有基类对象的特征,同时又有其自身特有的特征。

一个教师类的对象与一个学生类的对象都具有人这个类所描述的特征,同时又具有教师类和学生类各自所特有的特征。

利用类之间的继承关系,可以简化类的描述。

在人这个类中描述教师类和学生类的共性,而在学生类和教师类中只需描述各自的个性。

利用继承机制可以提高软件代码的可重用性。

在设计一个新类时,不必从头设计和编写全部的代码,可以通过从已有的具有类似特性的类中派生出一个类,继承原有类中的部分特性,再加上所需要的新特性。

这一点与面向过程的设计语言中的过程或函数不同,在面向过程的设计语言中,要使用具有相似功能的过程或函数,必须修改源程序代码以使其适应新系统的功能需求,而类的派生机制无需原有类的源代码即可派生出新的类。

利用类及其继承性描述系统时,由于类之间的继承关系,可能会形成一种具有层次性的类结构。

在使用类的层次结构描述系统时,某些类之间的层次关系可以有多种实现方案。

例如中学生类,既可以直接从人这个类派生出来,也可以从人这个类的派生类--学生类派生出来。

在设计类的层次结构时,应注意建立的类层次结构是否易于理解以及组织类结构的费用等方面的问题。

设计出来的类层次结构是否合理,往往取决于系统分析员的经验等因素。

3.多态性

多态性是面向对象系统的又一重要特性。

所谓多态,即一个名词可具有多种语义。

在C++语言中,多态性主要表现在以下两个方面。

(1) 重载

在C++语言中,同一函数名以及运算符可以具有不同含义的多种实现版本,编译器将根据函数调用的参数形式决定调用哪一种实现版本。

(2) 虚函数

C++语言引入了虚函数机制,允许在不同类层次对象中应用函数成员的不同版本。

例如实现一个类Shape,然后从该类派生出画点的类Point、画圆的类Circle、画直线的类Line,每一种图形的画法均不同,但是它们都有几种共同的操作--显示图形、擦除图形、移动图形。

移动图形的操作都是首先擦除图形,然后改变图形的位置基准点,再在新位置显示出图形。

在类Shape中实现移动图形的操作,每种图形的显示、擦除、改变基准点等操作在派生类中分别实现。

若程序中使用某图形对象的移动操作,编译器采用动态联编的手段,在执行时根据该图形对象是哪一个类的实例,决定调用哪一个类的显示、擦除、改变基准点的方法。

这种多态性称为运行时的多态性。

而重载在编译时编译器即可确定使用哪一个实现版本,是静态的。

Java中面向对象三大特征

  • 封装
  • 继承
  • 多态 一、Java的多态有哪些具体内容? ? ? ? 1. 多态原则:(1)对象类型不变(2)只能用引用调用其引用类型中定义的方法 (3)运行时,根据对象的实际类型去找子类覆盖之后的方法 2. 对象的强制转换:?引用 instanceof 类型格式? 3. 多态的灵活变换? (1)用于参数列表上:?public void m(A a){} 可以用A类的任何子类对象作为参数(2)用在返回值上:public A m(){} ?这个方法可能返回A类的任何子类对象 二、Java的组成 4. Java编程语言,即语法。

    5. Java文件格式,即各种文件夹、文件的后缀。

    6. Java虚拟机(JVM),即处理*.class文件的解释器。

    7. Java应用程序接口(Java API)。

  • 星梦云-年中四川100G高防云主机月付仅60元,西南高防月付特价活动,,买到就是赚到!

    官方网站:点击访问星梦云活动官网活动方案:机房CPU内存硬盘带宽IP防护流量原价活动价开通方式成都电信优化线路4vCPU4G40G+50G10Mbps1个100G不限流量210元/月 99元/月点击自助购买成都电信优化线路8vCPU8G40G+100G15Mbps1个100G不限流量370元/月 160元/月点击自助购买成都电信优化线路16vCPU16G40G+100G20Mb...

    LOCVPS-2021年6月香港便宜vps宽带升级,充值就送代金券,其它八折优惠!

    LOCVPS怎么样?LOCVPS是一家成立于2011年的稳定老牌国人商家,目前提供中国香港、韩国、美国、日本、新加坡、德国、荷兰等区域VPS服务器,所有机房Ping延迟低,国内速度优秀,非常适合建站和远程办公,所有机房Ping延迟低,国内速度优秀,非常适合做站。XEN架构产品的特点是小带宽无限流量、不超售!KVM架构是目前比较流行的虚拟化技术,大带宽,生态发展比较全面!所有大家可以根据自己业务需求...

    LOCVPS:美国XEN架构VPS七折,全场八折,日本/新加坡XEN架构月付29.6元起

    LOCVPS发来了针对XEN架构VPS的促销方案,其中美国洛杉矶机房7折,其余日本/新加坡/中国香港等机房全部8折,优惠后日本/新加坡机房XEN VPS月付仅29.6元起。这是成立较久的一家国人VPS服务商,目前提供美国洛杉矶(MC/C3)、和中国香港(邦联、沙田电信、大埔)、日本(东京、大阪)、新加坡、德国和荷兰等机房VPS主机,基于XEN或者KVM虚拟架构,均选择国内访问线路不错的机房,适合建...

    面向对象的特点为你推荐
    bug代码CF的BUG代码了怎么办???rtfrtf是什么格式?融360我在融360APP上申请二十万没通过,今天有人打电话给我说可以通过,这个是真的吗?搜索引擎有哪些搜索引擎都有什么啊小项目想创业,二十万以内有什么好项目?sg什么意思机油,SG,SJ,SL,SM,SN代表什么意思1,越详细越好sd卡座我是一家手机生产厂的采购员,想知道按键开关、SD卡座什么厂家生产的好啊。知道的说说。谢谢黑屏操作电脑一操作就黑屏 不操作就没有事。该怎么恢复相册网知不知道怎么把一个人的照片放到网上去?里程碑2摩托罗拉里程碑2怎么样
    厦门域名注册 中文域名申请 七牛优惠码 国外永久服务器 kvmla 安云加速器 灵动鬼影 cpanel空间 京东商城0元抢购 泉州移动 最漂亮的qq空间 google台湾 atom处理器 万网主机 卡巴斯基官网下载 国外免费网盘 葫芦机 开心online windowssever2008 winds 更多