首页 > 其他分享 >第六章《类的高级特性》第6节:面向对象三大特征

第六章《类的高级特性》第6节:面向对象三大特征

时间:2022-12-30 16:34:07浏览次数:55  
标签:封装 对象 子类 继承 面向对象 第六章 父类 方法 三大

​面向对象编程具有三大特征,分别是:封装、继承和多态。

一、封装​

封装就是隐藏一切可隐藏的东西,只向外界提供最简单的操作接口。举例来说:电视机的工作原理很复杂,为完成这些复杂的工作,需要在电视机内部安装很多精密的元器件。但人们操作电视机却很简单,因为电视机用外壳封装了这些复杂的电子元件,只留出几个简单的按钮供使用者操作。这样的设计既降低了用户操作电视机的难度,也保护了电视机内部的电子元件不会受到损害。面向对象编程的封装也是相同原理:对象内部有很多方法,这些方法的实现过程也许很复杂,但调用者只需要提供相关的参数就能启动方法运行,并且只要用类型合适的变量来接收返回值即可。​

封装给对象提供了隐藏内部特性和行为的能力,那么如何完成对内部特性和行为的隐藏呢?这需要用到Java语言提供的几种访问修饰符。通过添加合理的访问修饰符,就能设置属性和方法的访问权限,从而实现对对象内部细节的封装。​

封装的目的有两个:第一,降低调用对象的难度。调用对象者无需关心对象内部的实现细节,只需要按照对象所提供的操作方式即可操作对象。第二,保护对象的内部数据的安全性。通过设置访问权限,就能够避免对象的属性和方法被随意操作。​

二、继承

继承是指子类继承父类的属性和方法。继承机制带来的最大好处就是降低重复劳动,子类无需重复定义父类已经定义过的属性和方法。同时,面向对象的继承是一种开放式的继承。子类不仅仅能够扩展属于自己的新方法和属性,还可以屏蔽父类的属性、重写父类的方法。​

三、多态

“多态”一词从字面上理解就是“事物的多种形态”。在面向对象编程领域,它是指同一个行为具有多个不同表现形式。具体来说就是:通过相同类型的引用,调用相同名称的方法,但方法执行的过程和结果却各不相同。例如在本章的【例06_07】中,虽然都是通过Shape类的引用调用area()方法,但方法的执行过程却并不完全相同,如果引用指向了Rectangle类对象,则按矩形求面积公式计算,如果引用指向了Triangle类对象,则按三角形求面积公式计算。多态性使得程序员能够用统一的方式调用实现过程各不相同的方法。实现多态有三个必要条件:​

1、子类可以继承父类​

2、子类可以重写父类中的方法​

3、父类的引用能够指向子类对象

除此文字版教程外,小伙伴们还可以点击这里观看我在本站的视频课程学习Java。

标签:封装,对象,子类,继承,面向对象,第六章,父类,方法,三大
From: https://blog.51cto.com/mugexuetang/5980626

相关文章

  • 第六章《类的高级特性》第3节:访问修饰符
    ​在日常生活中,各种信息的公开程度是不一样的。例如:张贴在公告栏中的信息就是完全公开的,任何人都可以看,而有一些具有保密性质的档案就不能被所有人查看,它仅能被拥有权限的特......
  • 智能且高效,华为云CDN三大特点助企业云上创新
    互联网的普及给我们的生活带来了巨大改变,也衍生出很多围绕互联网相关的服务产品,如CDN加速服务就在互联网大潮流中迎来了高速的发展,以此来满足人们对网络速度的更高需求。而......
  • Python 面向对象
    目录Python面向对象方法没有重载方法的动态性私有属性和私有方法(实现封装)@property装饰器属性和方法命名总结Python面向对象方法没有重载在其他语言中,可以定义多个......
  • Python 面向对象进阶
    目录Python面向对象进阶面向对象三大特征介绍继承语法格式类成员的继承和重写查看类的继承层次结构与根类属性重写__str__()方法Python面向对象进阶面向对象三大特征......
  • Java面向对象:子类与继承
    今天听java课程感觉难度突然增加,因此注意上课记录关键笔记,提醒自己回顾。JAVA子类与继承子类与父类问题:哪些父类的变量与方法可被子类继承?与访问权限有关前提知识:jav......
  • Java基础之面向对象——类、对象、方法
    类与对象    类的概念我们平时已经听过很多了。人类、鸟类、鱼类...所谓类,就是对一类事物的描述,是抽象的、概念上的定义,比如鸟类,就泛指所有具有鸟类特征的动物。比......
  • 分享丨品牌零售行业三大实践解读,全面搭建并落地数字化运营体系
    以下内容来自神策数据创始人&CEO桑文锋关于数据驱动零售品牌业务增长的相关分享。神策从2020年深入品牌零售领域,一路走来跌跌撞撞,不过思路越来越清晰,对该领域的理解也......
  • 【维生素C语言】第六章 - 指针
    前言:本章是指针部分的开始,将对C语言中非常重要的指针进行讲解。本章结束后有能力的读者可对应指针进阶部分进行进一步学习。指针专题配备了一些笔试题,建议尝试。一、指针的......
  • day07 面向对象
    1.类和对象**面向对象和面向过程的思想对比:**​ 面向过程:是一种以过程为中心的编程思想,实现功能的每一步,都是自己实现的​ 面向对象:是一种以对象为中心的编程思想......
  • MVC提出者Trygve Reenskaug-"面向对象常识论"-UMLChina讲座-音频和幻灯
    时间2008年12月22日(周一)下午19:00-21:00演讲人TrygveReenskaug(http://folk.uio.no/trygver/),挪威奥斯陆大学教授。OOram(面向对象角色分析方法)方法学和著名的MVC、DCI的提出......