版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第7章类和对象简约风格|程序设计主题|课堂教学版本章学习地图面向对象概述对象类属性和方法构造方法课程重点理解面向对象的基本思想。掌握对象、类、属性、方法和构造方法。理解封装与继承并能编写简单类。课堂推进建议1概念导入2语法讲解3示例演示4随堂练习JavaScript程序设计|授课PPT1第7章学习目标与知识结构JavaScript程序设计|授课PPT2学习目标理解对象由属性和方法组成。理解类是创建对象的模板。会用class定义类,用new创建对象。会在类中定义构造方法和普通方法。了解封装和继承的作用。本章内容结构1面向对象思想2对象直接量3类与对象4constructor构造方法5属性与方法6封装7继承8综合应用第7章面向对象程序设计思想JavaScript程序设计|授课PPT3面向对象把现实世界中的事物抽象为程序中的对象。对象既有状态,也有行为。状态用属性表示,行为用方法表示。面向对象有利于提高模块化程度和代码复用能力。类比学生对象:姓名、年龄、成绩是属性;学习、考试、显示信息是方法。手机对象:品牌、价格是属性;打电话、拍照是方法。第7章对象直接量JavaScript程序设计|授课PPT4讲解要点对象可以用一组键值对描述。属性名和值之间用冒号分隔。多个属性之间用逗号分隔。通过对象名.属性名访问属性。JavaScript示例letphone={brand:"Huawei",price:4999,color:"black"};console.log(phone.brand);console.log(phone.price);第7章类与对象的关系JavaScript程序设计|授课PPT5类是描述一组相似对象的模板。对象是根据类创建出来的具体实例。同一个类可以创建多个对象,每个对象的属性值可以不同。使用类能让对象创建过程更规范、更统一。一句话类像“图纸”。对象像“按图纸造出的具体产品”。第7章定义类与创建对象JavaScript程序设计|授课PPT6讲解要点使用class定义类。constructor()是构造方法,用于初始化属性。this表示当前对象。使用new创建对象。JavaScript示例classStudent{constructor(name,age){=name;this.age=age;}}lets1=newStudent("李华",16);lets2=newStudent("王明",17);console.log();console.log(s2.age);第7章方法:对象的行为JavaScript程序设计|授课PPT7讲解要点方法定义在类中,用于描述对象能做什么。方法可以访问对象自己的属性。通过对象名.方法名()调用方法。JavaScript示例classRectangle{constructor(width,height){this.width=width;this.height=height;}getArea(){returnthis.width*this.height;}}letrect=newRectangle(10,20);console.log(rect.getArea());第7章封装JavaScript程序设计|授课PPT8封装是把数据和操作数据的方法组织在对象内部。对象对外提供必要接口,隐藏内部实现细节。通过方法读写属性,可以增加检查和控制。封装能提高程序安全性、可维护性和复用性。生活类比开车时只需要方向盘、油门和刹车。不需要了解发动机内部所有细节。第7章封装示例:控制属性修改JavaScript程序设计|授课PPT9讲解要点通过方法设置属性,可加入合法性检查。避免外部代码随意修改对象内部状态。JavaScript示例classRectangle{constructor(width,height){this.width=width;this.height=height;}setHeight(h){if(h>0){this.height=h;}}}letr=newRectangle(10,20);r.setHeight(50);console.log(r.height);第7章继承JavaScript程序设计|授课PPT10继承允许子类获得父类已有的属性和方法。使用extends表示继承关系。子类构造方法中通常使用super()调用父类构造方法。继承可以减少重复代码,并表达对象之间的层次关系。例子Human是父类。Student、Teacher可以是子类。子类既有共同特征,也有自己的特征。第7章继承示例JavaScript程序设计|授课PPT11讲解要点Teacher继承Human。super(name,age)调用父类构造方法。子类增加自己的subject属性。JavaScript示例classHuman{constructor(name,age){=name;this.age=age;}}classTeacherextendsHuman{constructor(name,age,subject){super(name,age);this.subject=subject;}}lett=newTeacher("张老师",30,"JavaScript");console.log(+"teaches"+t.subject);第7章课堂练习JavaScript程序设计|授课PPT12随堂练习/课后作业建议1定义Student类,包含姓名和年龄,并创建对象输出信息。2为Student类添加showInfo()方法。3定义Circle类,包含半径,提供求面积和周长方法。4定义Book类,包含书名、作者、价格,并输出图书信息。5定义Person类和Student子类,体
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 蝗灾应急防控方案
- 年产48000t汽车配件智能工段项目可行性研究报告模板-立项申报用
- 洗漱套装配送协议
- 甲状腺术后呼吸功能锻炼指导
- 2026年及未来5年市场数据中国戒烟产品行业市场深度研究及投资战略规划报告
- N0-N1层级阑尾炎病人护理专项试题
- 阑尾炎病人护理考核试题(一)
- 期末快乐大盘点教学设计小学综合实践活动辽师大版三年级下册-辽师大版
- 肯德基理论试题及答案
- 陕西省宝鸡市2026年高三高考模拟检测试题(三)(宝鸡三模)数学试卷(含答案)
- 2026上海闵行区七宝镇村(合作社)、镇属公司招聘16人备考题库含答案详解(预热题)
- 2024年上海奉贤区国内外高校招录储备人才笔试真题
- 2025年山东省鲁信投资控股集团有限公司招聘笔试参考题库附带答案详解
- 【初中语文】第16课《有为有不为》教学课件2024-2025学年统编版语文七年级下册
- 嵌入式系统在智能交通中的应用及挑战分析
- 全自动压捆机安全操作规程
- 催收公司新人培训
- 沪教版八年级化学(上册)期末检测卷及答案
- 工业现场网络通信技术应用及实践-习题参考答案2024
- 中国古代餐具
- 承包商施工安全技术交底
评论
0/150
提交评论