第三章(Java面向对象编程)对象和类
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三章
对象和类
』回顾 _____________
■循环语句while、do-while、for的区别是什么?
写出运行结果
int i = 0 J = 0; while(i<7){ if(jA4){
System.out. printInW i++; con
tinue;
System.out. pHntln(E・); i++;
i++;
右本章目标
-掌握类和对象的特征
■理解封装
-会创建和使用对象
右什么是面向对象?
Object Oriented
对象以…为导向的
Programming 程序设计
在计算机程序中用相似的实体模拟现实壯界屮的实体设计和实现软件系统的方法
』面向对象的编程语言
如今,面向对象的编程思想已经成为主流; 面
向对象的编程语言正大行其道,最具代表性的右:
C++
Java
C#
连数据库也开始而向对象了,如Oracleo
』面向对象的编程思想
旨在计算机稈序中模拟现实世界屮的概念在OOP中,现实世界的所冇事物全都被视为对彖
C 语言是结构化
的编程语言
(Structured
Programming,
简作SP );
强调精巧的数据结构和优越的算法,关注 程序的运行效率;
不适合丁大规模的程序开发;
程序模块之间协调性差,程序的重用性、 安全性、健壮性和可维护性都存在较大的 缺
« C 语言的编程方式
■
SP 和OOP 对比
SP
OOP
自顶向下、层次化■分解
自底向上.对象化■综合
函数模块 对象
设计方法 程序=算法+数据结构 程序=对象=数据+方法 优点
相互独立,代码共享 缺点
数据与程序不一致 维护困难
接近人的思维方式 模拟客观世界
客观世界的无序性 概念不成熟
设计思路 程序单元
陷。
右身边的对象
姓名5布兰尼 职衔:收银
员 年龄:29 体置:61千克 操作^ 收款 打印账单
土力物皆对象
■"IS 界是由什么组成
的? 名胜
操作: 购买商品
___________ >
人
.植物
:朱丽叶 :32 :50千克
朱丽叶
i
右对象的特征——属性
-属性——对象具有的各种特征
-每个对象的每个属性都拥有特定值■例如:和兰尼和朱丽叶的体重不一样
对象的特征---- 方法
■方法------ 对象执行的操作
对彖的属性和方法
厂列出尼古拉斯•凯奇驾驶的这辆法拉利
F360
Spider 的属性和方法
6 • J
―:心 港ft 呻亠;・
■Ur
. -
小结
■说•说教室里的对象 -描述他们的属件和方法
険-「
£
品牌:BENQ 投影
白炽灯
■
z
姓名^张三 年龄:20 学习
材制:木质I
支
W 卑員 J
0 . 型 亮晴 类
开关变变
:法拉
利 :F360Spide r :黄色 :380万元
属性:
颜色:白色 方法: 叫 跑 吃
I
从对象抽象出“类”
■抽取出下列对象的属性和方法的共同特征
士类
顾客类 轿车类
■类是对象的类型
-不同于int 类型:具有方法
OA
类是模子,确定对象将会拥有的 特征(属性)和行为(方法)
球状冰淇淋模子 ]
■ ■ ■■ *
各种口味的球状冻淇淋
J 类和对象的区别
类是用来描述实体的“模板”或“原型” 对象是实际的实体,每一个对象都是类的 一个具体实例;
类用來定义对象所有的属性和方法,同一 类的所有对象都拥有相同的特征和操作; 可以将类理解成生产产品的模具,而对象 则是根据此模具生产的一个个产品。
士类与结构
-最简单的埋解方式:
C
区别在于:结构体一般只有数据(属性)而 没有函数(方法)。
结构体
结构体变量
■
Java
寸Java是面向对象的语言
■所有Java程序都以类class为组织单元
■关键字class定义口定义的数据类型
pu blic class ^HelloJj
Public static void main(String[ ] args) {
System.out.printlnC^li 用Java 语 * 理解程序逻辑J;
寸Java类模板
-类将现实世界屮的概念模拟到计算机程序中
厂
Public class 类名{
〃定义厲性部分属性1的类型属性1; A性2的类型厲性2;
属性n的类型厲性n;
〃定义方法部分方法1;方法2;
方法m;
右定义类
■定义一个类的步骤
1、定义类名
2、编写类的属性
3、编写类的方法
在Java中定义类
"定义学生类" class Student {
string name; //姓名int age; //年龄float weight; //体重
/*吃饭的方法" void dining () {
System, out.printin 吃饱了•…”) weight++;
/*走路的方法*/ void walk () {
System, out. printin J 走累了. • J) weight―;成员变城(属件)
成员函数(方法)