欢迎来到天天文库
浏览记录
ID:59209478
大小:1.86 MB
页数:123页
时间:2020-09-26
《第6章 面向对象的思想概述ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第6章面向对象的思想概述由于Java语言是面向对象的程序设计语言,为编写出充分利用Java特点的高效程序,必须首先建立按照面向对象的方法来认知世界的思维方式。课程目标了解对象;了解类型;了解对象和类型之间的关系本章重点面向过程程序=算法+数据以数据为基础,通过算法计算数据面向对象程序=对象+消息万物皆为对象,对象通过消息相互作用面向过程与面向对象比较什么是面向对象不使用面向对象描述一件事青椒炒牛肉取出青椒500g,用刀切成细丝,过油取出牛肉300g,切丁,用酱油、酒、黑醋腌制30分钟起油锅、放入牛肉炒及青椒大火快炒1分半拿出淀粉、水調在一起,這个称为芡汁。將芡汁倒入锅中攪拌,会产生黏稠現象這
2、叫芶芡完成。使用面向对象描述一件事青椒炒牛肉青椒數量:500g处理:用刀切成细丝,过油牛肉數量:300g处理:切丁,用酱油、酒、黑醋腌制芡汁製作:淀粉調上適量的水芶芡:將芡汁倒入锅中青椒处理好、牛肉处理好、芡汁製作好,放入锅中快炒1分半後用芡汁芶芡即可。什么是面向对象青椒炒牛肉青椒數量:500g处理:用刀切成细丝过油牛肉數量:300g处理:切丁,用酱油、酒、黑醋腌制芡汁製作:淀粉調上適量的水芶芡:將芡汁倒入锅中青椒处理好、牛肉处理好、芡汁製作好,放入锅中快炒1分半後用芡汁芶芡即可。先定好参与这件事的物品有哪些(这些物品叫做“对象”)再定义这些物品所需的数量及行为(这些数量及行为叫做“属性”与
3、“方法”)接下来就可用物品间的互动行为来描述整件事情是如何发生的。(这部份的描述称为“主程序”)什么是对象?对象由什么组成?对象有什么特性?对象观对象(object)我们可以把生活所在的真实世界(RealWorld)当作是由许多大小不同的对象所组成的。对象可以是有生命的个体,比如一个人或一只鸟。对象也可以是无生命的个体,比如一辆汽车或一台计算机。对象也可以是一件抽象的概念,如天气的变化或鼠标所产生的事件。万物皆对象现实是由实体组成的,所有实体皆为对象。对象是现实实体在软件系统中的映射对象观对象的三要素对象的属性(特征、状态、组成)对象的行为(对象能完成的功能,用于改变状态、发送消息)对象的标识
4、对象观生活中常见的对象:对象的名称对象的属性(状态)对象的方法(行为)汽车速度、油量、所处的位置…加速、刹车、换挡…仓库结构、容量、库存…入库、出库、盘点…国家经济状况、人口、地理位置…发展经济、战争、谈判…发展经济、战争、谈判…人五官、肤色、民族…运动、工作、学习…类(class)在真实世界里,有许多同“种类”的对象。而这些同“种类”的对象可被归类为一个“类”。例如我们可将世界上所有的汽车归类为汽车类,所有的动物归为动物类。动物类汽车类类描述了一组有相同特性(属性)和相同行为(方法)的对象。类是现实世界中实体的抽象集合,是封装了数据和操作的复杂的抽象数据类型。什么是类类和对象汽车类有些共同的
5、状态(汽缸排气量,排档数,颜色,轮胎数……)和行为(换档,开灯,开冷气……),但每一台汽车个别的状态及方法可不同于且独立于其他汽车。你的汽车只是这世界中许多汽车中的一个。我们就称你的汽车是汽车类中的一个对象,也叫一个实例汽车类class)实例instance)NEW你的车软件开发过程:具体—抽象—具体对象:刘丽静态特征:刘丽女讲师动态特征:授课评职称类:教师属性:姓名性别职称服务:授课评职称抽象实例化类和对象类是具有共同属性和行为的对象的抽象。对象是具体的,类型是抽象的创建的是类型,使用的是对象类对象抽象实例化属性或状态操作或行为数据或变量方法为什么要使用类?采用简单数据类型表示现实世界中
6、的概念存在很大的局限性。例如:采用int型数据表示一个日期概念,需要使用3个变量:intday,month,year;如果要表示2个人的生日,就要使用6个变量同时在使用日期概念时要同时对三个变量进行访问而定义一个Date类表示日期就方便的多了……面向对象程序设计的重点是类的设计,而不是对象的设计。最基本的观点:万物皆对象类和对象的产生:具体---抽象----具体创建的是类型,使用的是对象类型是对象的抽象,对象是类型的实例总结第6章类与对象本章学习目标掌握类的定义与创建对象的方法掌握方法及构造方法重载掌握访问控制修饰符和static的用法本讲内容类的定义创建对象构造方法第一个例子:福娃说话pub
7、licclassDoll{/***福娃的名字*/privateStringname;publicDoll(Stringname){this.name=name;}/***福娃说话*/publicvoidspeak(){System.out.println(name);}}publicclassAppMain{/***应用程序的入口方法*/publicstaticvoidmain(Stringarg
此文档下载收益归作者所有