《面向对象入门》PPT课件.ppt
《《面向对象入门》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《面向对象入门》PPT课件.ppt(51页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、面向对象编程计算机科学技术系计算机科学技术系第第第第四讲四讲四讲四讲面向对象和面向对象和面向对象和面向对象和UMLUML1回顾 循环语句while、do-while、for的区别是什么?int i=0,j=0;while(i4)(*);i+;continue;(*);j+;i+;*写出运行结果输出输出2预习检查n类与对象的关系是什么?n定义一个类的语法是什么?n如何创建一个类的对象?3本章任务以OO(Object-oriented)方式实现:nAccp学校类,描述Accp中心基本信息n学生类,输出学生信息n教员类,输出教员信息 4n领会面向对象编程的核心思想n掌握类的含义和设计n理解封装n会创
2、建和使用对象本章目标5面向过程编程与面向对象编程比较n实例:编写求解矩形面积和周长的程序1.面向过程的编程方法n将任务分解为求解矩形面积和周长的方法n编写计算矩形面积和矩形周长的函数n在主程序中,调用求解计算矩形面向和周长的函数,完成程序功能2.面向对象的编程方法n编写描述矩形对象的类,类中包含矩形的长、宽等属性、求解矩形面积和周长的方法n在主程序中,创建一个指定长、宽的矩形对象,发送求解面积和周长的消息给矩形对象,对象作出反应,计算并返回面积和周长值,完成程序功能6面向过程方法与面向对象方法比较n面向过程方法:采用功能划分的方法求解问题方法强调过程的抽象和模块化函数是组成程序的基本单元 当你
3、看到这个面积函数的时候,你知道这是求矩形的面积的函数吗?n面向对象方法:侧重于采用系统结构的划分方法来求解问题方法强调对现实世界的实体和概念的抽象类是组成程序的基本单元7面向过程编程与面向对象编程比较n结构化程序设计方法与面向对象程序设计方法地比较:结构化程序设计侧重于功能抽象,强调确定和分解系统的功能。其缺点:n功能分解的随意性大n系统功能最不稳定,易变化面向对象程序设计侧重于描述系统结构,功能抽象数据抽象,其优点:n系统结构相对稳定n灵活的机制,如继承、多态和动态绑定有利于修改和扩充系统功能2/11/20238面向对象的设计思想n心理学研究表明,把客观世界由许多对象组成,对象具有其属性和行
4、为,之间存在着各种联系,这样能够更好的刻画问题域,也更接近人类的自然思维方式。这就是面向对象程序开发思想的由来。n面向对象更加强调运用人类在日常的思维逻辑中经常采用的思想方法与原则,如抽象、继承、聚合、多态等。9类(对象)之间的关系-关联关系10类(对象)之间的关系-继承关系11类(对象)之间的关系-聚合关系12类和对象的概念n类是用于描述一类型的对象的一个抽象的概念,类中定义了这一类对象所具有的属性和行为。n类可以看成一类对象的模板,对象可以看成该类的一个具体实例。13万物皆对象n世界是由什么组成的?名胜名胜 人人 物品物品 动物动物 ,植物,植物 14身边的对象布兰尼布兰尼朱丽叶朱丽叶顾客
5、顾客姓名:朱丽叶姓名:朱丽叶年龄:年龄:28体重:体重:52千克千克操作:操作:购买商品购买商品姓名:布兰尼姓名:布兰尼职衔:收银员职衔:收银员年龄:年龄:35体重:体重:60千克千克操作:操作:收款收款打印账单打印账单15对象的特征属性n属性对象具有的各种特征n每个对象的每个属性都拥有特定值例如:布兰尼和朱丽叶的体重不一样 60kg 布兰尼布兰尼属性属性 35岁岁收银员布兰尼收银员布兰尼 16对象的特征方法n方法对象执行的操作 打单打单 收银收银 方法方法 刷卡刷卡 收银员布兰尼收银员布兰尼17对象的属性和方法n列出尼古拉斯凯奇驾驶的这辆法拉利F360 Spider的属性和方法n列出小狗对象
6、的属性和方法属性:属性:品牌:法拉利品牌:法拉利 型号:型号:F360 Spider 颜色:黄色颜色:黄色 价格:价格:380万元万元方法:方法:发动发动 停止停止 加速加速属性:属性:颜色:白色颜色:白色方法:方法:叫叫 跑跑 吃吃18小结1n说一说教室里的对象n描述他们的属性和方法 颜色:黑色颜色:黑色品牌:品牌:BENQ投影投影姓名:张三姓名:张三年龄:年龄:20学习学习类型:白炽灯类型:白炽灯开开关关变亮变亮变暗变暗材制材制:木质木质支撑物品支撑物品19封装n对象同时具有属性和方法两项特性n对象的属性和方法通常被封装在一起,共同体现事物的特性,二者相辅相承,不能分割谁看见过只有谁看见过
7、只有“完好完好的零件和颜色的零件和颜色”而不而不能开动的汽车?能开动的汽车?20从对象抽象出“类”抽取出下列对象的属性和方法的共同特征 顾客顾客 21类顾客类轿车类 类是模子,确定对象将会拥有的类是模子,确定对象将会拥有的特征(属性)和行为(方法)特征(属性)和行为(方法)n类是对象的类型不同于int类型:具有方法 各种口味的球状冰淇淋各种口味的球状冰淇淋 球状冰淇淋模子球状冰淇淋模子22小结2n类和对象有什么区别呢?类是抽象的概念,仅仅是模板,比如说:“人”对象是一个你能够看得到、摸得着的具体实体,比如:“小布什”小布什小布什普京普京克林顿克林顿“人”类特征(属性)年龄体重行为(方法)衣食住
8、行23Java 是面向对象的语言 n所有Java程序都以类class为组织单元n关键字class定义自定义的数据类型 public class HelloAccp public static void main(String args)(使用使用Java语言理解程序逻辑语言理解程序逻辑);24Java类模板n类将现实世界中的概念模拟到计算机程序中public class 类名类名 /定义属性部分定义属性部分 属性属性1的类型的类型 属性属性1;属性属性2的类型的类型 属性属性2;属性属性n的类型的类型 属性属性n;/定义方法部分定义方法部分 方法方法1;方法方法2;方法方法m;25定义类n定义
9、一个类的步骤1、定义类名2、编写类的属性3、编写类的方法26类示例2-1 在不同北大青鸟培训中心(北京中心,杭州中心等),你会感受到相同的环境和教学氛围,用类的思想输出Accp中心信息AccpSchool类属性:中心全称中心教室数目中心机房数目方法:展示中心信息27类示例2-2public class AccpSchool /定义北大青鸟中心的属性定义北大青鸟中心的属性 String schoolName;/中心的全称中心的全称 int classNum;/教室的数目教室的数目 int labNum;/机房的数目机房的数目 /定义北大青鸟中心的方法定义北大青鸟中心的方法 public Stri
10、ng toString()return schoolName+培训培训ACCP学员学员 +n+配备:配备:+classNum+教教+labNum+机机;定义类的定义类的toString()方法,方法,用于输出类相关的信息用于输出类相关的信息 public String toString()return 字符串;字符串;/方法体方法体 成员变量成员变量28常见错误public class.Book String bookName;String authorName;int pageNum;boolean isAvailable;类命名规则:类命名规则:1、不能使用、不能使用Java关键字关键字2
11、、首字母可以为字母,也可以是、首字母可以为字母,也可以是“_”或或“$”(建议不要建议不要这样这样)3、不能包含空格或、不能包含空格或“.”号号代码错误代码错误29如何定义类的方法n类的方法定义类的某种行为(或功能)方法的定义方法的定义 方法的名称方法的名称 方法的主体方法的主体 方法返回的数据类型方法返回的数据类型 定义类的方法定义类的方法public 返回值类型返回值类型 方法名方法名()/这里编写方法的主体这里编写方法的主体步骤一:定义方步骤一:定义方法名以及返回值法名以及返回值步骤二:编写方步骤二:编写方法体法体30方法的命名n如何给方法起名字?必须以字母、_或开头可以包括数字,但不能
12、以它开头n遵循的命名规范通常方法名是一个动词,如果有两个以上单词组成,第一个单词的首字母小写,其后单词首字母大写31方法的返回值n两种情况如果方法具有返回值,方法中必须使用关键字return返回该值,返回类型为该返回值的类型如果方法没有返回值,返回类型为voidpublic class Student String name=张三张三;public void getName()return name;返回类型要匹配返回类型要匹配return 表达式;表达式;编译错误编译错误32常见错误2-1public class AccpSchool public static void main(Stri
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向对象入门 面向 对象 入门 PPT 课件
限制150内