对象类方法.ppt
《对象类方法.ppt》由会员分享,可在线阅读,更多相关《对象类方法.ppt(71页珍藏版)》请在三一文库上搜索。
1、,软件学院,Chapter 3 面向对象的编程技术,长沙民政职业技术学院,回顾,循环语句while、do-while、for的区别是什么?,int i = 0, j = 0; while(i4) System.out.println(“*“); i+; continue; System.out.println(“*“); j+; i+; ,* * * * * * *,写出运行结果,输出,3,回顾,public class Test public static void main(String args) for(int i=0;i10;i+) System.out.println(i); Sy
2、stem.out.println(i=10); ,请举例说明类与对象的区别与联系。,超出了变量i的访问范围,请指出下列Java代码中存在的错误,并改正。,回顾,阅读下面代码,哪个有错误?说明理由 填代码:逆序输出数组中的元素,double a = new double ;,double a = new double51,2,3,4,5,;,double a = 1,2,3,4,5;,int a = new int 1,2,3,4,5; for (_; _; _ ) System.out.println(ai); ,int i = a.length -1,i = 0,i- -,万物皆对象,世界是
3、由什么组成的?,身边的对象,布兰尼,朱丽叶,顾客 姓名:朱丽叶 年龄:28 体重:52千克 操作: 购买商品,姓名:布兰尼 职衔:收银员 年龄:35 体重:60千克 操作: 收款 打印账单,对象的特征属性,属性对象具有的各种特征 每个对象的每个属性都拥有特定值 例如:布兰尼和朱丽叶的体重不一样,60kg,布兰尼,属性,35岁,对象的特征方法,方法对象执行的操作,打单,收银,方法,刷卡,对象的属性和方法,列出尼古拉斯凯奇驾驶的这辆法拉利F360 Spider的属性和方法 列出小狗对象的属性和方法,属性: 品牌:法拉利 型号:F360 Spider 颜色:黄色 价格:380万元 方法: 发动 停止
4、 加速,属性: 颜色:白色 方法: 叫 跑 吃,思考,说一说教室里的对象 描述他们的属性和方法,颜色:黑色 品牌:BENQ 投影,姓名:张三 年龄:20 学习,类型:白炽灯 开 关 变亮 变暗,材制: 木质 支撑物品,封装,对象同时具有属性和方法两项特性 对象的属性和方法通常被封装在一起,共同体现事物的特性, 二者相辅相承,不能分割,谁看见过只有“完好的零件和颜色”而不能开动的汽车?,从对象抽象出“类”,抽取出下列对象的属性和方法的共同特征,轿车,顾客,类,顾客类 轿车类 ,类是模子,确定对象将会拥有的特征(属性)和行为(方法),类是对象的类型 不同于int类型:具有方法,各种口味的球状冰淇淋
5、,球状冰淇淋模子,思考,类和对象有什么区别呢? 类是抽象的概念,仅仅是模板,比如说:“人” 对象是一个你能够看得到、摸得着的具体实体,比如:“小布什”,小布什,普京,克林顿,Java 是面向对象的语言,所有Java程序都以类class为组织单元 关键字class定义自定义的数据类型,public class Hello public static void main(String args) System.out.println(“使用Java语言理解程序逻辑“); ,Java类模板,类将现实世界中的概念模拟到计算机程序中,public class 类名 /定义属性部分 属性1的类型 属性1;
6、 属性2的类型 属性2; 属性n的类型 属性n; /定义方法部分 方法1; 方法2; 方法m; ,定义类,定义一个类的步骤 1、定义类名 2、编写类的属性 3、编写类的方法,类示例2-1,长沙民政职业技术学院设有民政系、社会工作系、经济贸易系、软件学院等多个院系,用类的思想输出各个院系的信息,类示例2-2,public class School /定义学院的属性 String schoolName; / 院系名称 int techNum; /老师人数 int stuNum; /学生人数 / 定义展示院系的方法 public String toString() return “民政学院的“ +s
7、choolName + “n” + “拥有:”+ techNum + “名教师” + stuNum + “名学生“; ,定义类的toString()方法, 用于输出类相关的信息,public String toString() return 字符串; /方法体 ,成员变量,常见错误,public class .Book String bookName; String authorName; int pageNum; boolean isAvailable; ,类命名规则: 1、不能使用Java关键字 2、首字母可以为字母,也可以是“_”或“$ ”(建议不要这样) 3、不能包含空格或“.”号,代
8、码错误,如何创建和使用对象,使用对象的步骤: 使用new创建类的一个对象 使用对象:使用“.”进行以下操作 给类的属性赋值:对象名.属性 调用类的方法:对象名.方法名(),School sc= new School();,sc.schoolName = “软件学院“; /给属性赋值 sc.toString(); /调用类的方法,该方法中的操作将被执行,public class InitialSchool public static void main(String args) School sc= new School(); System.out.println(sc); sc.schoolN
9、ame = “软件学院“; sc.stuNum = 3000; sc.techNum = 100; System.out.println(sc); ,创建和使用对象示例,创建“软件学院”对象,演示示例2:创建和使用对象,说一说看到什么效果?,调用类的toString()方法是特例:这里使用center.toString()和center作用相同 更简便,综合案例,编写学生类,输出学生相关信息 编写教员类,输出教员相关信息,学生类参考代码,教员类参考代码,测试类参考代码,演示示例3:创建和使用类和对象,练习,编写一个音乐类,并编写测试类显示音乐信息 编写一个手机类,并编写测试类显示手机信息,音乐
10、类参考代码,手机类参考代码,测试类参考代码,测试类参考代码,面向对象(OO)的优点,便于程序模拟现实世界中的实体 用“类”表示实体的特征和行为 隐藏细节 对象的行为和属性被封装在类中,外界通过调用类的方法来获得,不需关注内部细节如何实现 可重用 可以通过类的模板,创建多个类的对象,数据类型总结,int double char,String 使用class定义的类型 Student Teacher School ,基本数据类型,引用数据类型,数据类型使用区别,小结,类和对象的区别是什么? 数据类型有哪两类?如何使用?,public class ,Student,toString,stu.name
11、,stu.sex,stu.age,实现输出学生信息,下面代码有哪些错误?,类的方法,写出狮子对象的“跑”方法 写出狮子对象的“叫”方法,电动玩具狮子 属性: 颜色:黄色 行为: 跑 叫,按此按钮, 狮子开始跑,类的方法示例,public class AutoLion String color = “黄色“; public void run() System.out.println(“正在以0.1米/秒的速度向前奔跑“); public String bark() String sound = “吼“ ; return sound; ,AutoLion类代码实现,方法名称,方法体,返回类型,如何
12、定义类的方法,类的方法定义类的某种行为(或功能),方法的名称,方法的主体,方法返回的数据类型,定义类的方法,public 返回值类型 方法名() /这里编写方法的主体 ,步骤一:定义方法名以及返回值,步骤二:编写方法体,方法的命名,如何给方法起名字? 必须以字母、_或开头 可以包括数字,但不能以它开头 遵循的命名规范 通常方法名是一个动词,如果有两个以上单词组成,第一个单词的首字母小写,其后单词首字母大写,方法的返回值,两种情况 如果方法具有返回值,方法中必须使用关键字return返回该值,返回类型为该返回值的类型 如果方法没有返回值,返回类型为void,public class Studen
13、t String name = “张三“; public void getName() return name; ,返回类型要匹配,return 表达式;,编译错误,常见错误2-1,public class School public static void main(String args) return “软件学院欢迎您! “; ,返回类型是void 方法中不能有返回值,常见错误2-2,public class Student public double getInfo() double weight = 95.5; double height = 1.69; return weight,
14、 height; ,方法至多可以返回一个值,不能返回多个值,方法调用,方法是个“黑匣子”,完成某个特定的应用程序功能,并返回结果 方法调用:执行方法中包含的语句,对象名.方法名();,小明过生日,爸爸送他一个电动狮子玩具,编程测试这个狮子能否正常工作,演示示例1:演示运行效果,方法调用,public class AutoLion String color = “黄色“; public void run() /方法1:跑 System.out.println(“正在以0.1米/秒的速度向前奔跑。“); public String bark() /方法2:叫 String sound = “吼“
15、; return sound; public String getColor() /方法3:获得颜色属性 return color; public String showLion() /方法4:描述狮子特性 return “这是一个“ + getColor() + “的玩具狮子!“ ; ,public class TestLion public static void main(String args) AutoLion lion = new AutoLion(); System.out.println(lion.showLion(); lion.run(); System.out.print
16、ln(lion.bark(); ,在类的方法中调用 该类另一个方法,在main()方法中 调用类的方法,演示示例2:设置断点演示方法调用执行过程,方法调用小结,方法之间允许相互调用,不需要知道方法的具体实现,提高了效率,变量作用域3-1,public class AutoLion String color = “黄色“; public void run() /方法1:跑 System.out.println(“正在以0.1米/秒的速度向前奔跑。“); public String bark() /方法2:叫 String sound = “吼“ ; return sound; public St
17、ring getColor() /方法3:获得颜色属性 return color ; public String showLion() /方法4:输出类的描述信息 return “这是一个“ + getColor() + “的玩具狮子!叫声是“ + sound ; ,可以调用吗?,演示示例3:变量作用域,变量作用域3-2,变量声明的位置决定变量作用域 变量作用域确定可在程序中按变量名访问该变量的区域, for(int i = 0, a = 0; i 4; i+) a+; System.out.println(a); ,a的作用域仅在for循环中,代码错误,变量作用域3-3,变量1类型 变量1;
18、 变量2类型 变量2; 变量3类型 变量3;,public 返回类型 方法1() 变量4类型 变量4; public 返回类型 方法2() 变量5类型 变量5; ,public class AutoLion,AutoLion类的方法 别的类的方法,谁能使用这些变量?,方法1,方法2,成员变量,局部变量,局部变量,练习,编写手机类(Phone):它可以下载音乐,可以播放这些音乐,可以进行充电 编写电池类(Cell):自动续电 编写测试类(Test),手机类,电池类,测试类,演示示例5:演示效果,带参数的方法就在身边,public String concat (String str) public
19、 int indexOf (String value) public String substring (int index) 方法实施时需要接收某个值进行处理,返回值类型,方法名,参数,为什么要用带参数的方法,工作原理,新鲜桃汁,新鲜苹果汁,新鲜梨汁,输出三种果汁,如何使用带参数的方法,定义带参数的方法 调用带参数的方法,public class Zhazhi /定义带参数的zhazhi方法 public String zhazhi ( String fruit ) String juice = fruit + “汁“; return juice; ,/*调用zhazhi方法*/ Zhazh
20、i myZhazhi = new Zhazhi(); String myFruit = “苹果“; String myJuice = myZhazhi.zhazhi(myFruit); System.out.println(myJuice);,参数列表: (数据类型 参数1,数据类型 参数2),调用方法,传递的参数要与参数列表一一对应,完整代码演示,完整代码演示,演示示例6:演示运行效果,带参数的方法应用2-1,输入学期代码,输出该学期的课程信息,if (courseCode.equalsIgnoreCase(“s1“) System.out.println(“第一学期的课程是:“); for
21、(int i = 0; i s1Course.length; i+) System.out.println(s1Coursei); else if (courseCode.equalsIgnoreCase(“s2“) System.out.println(“第二学期的课程是:“); for(int i = 0; i s2Course.length; i+) System.out.println(s2Coursei); else if (courseCode.equalsIgnoreCase(“y2“) System.out.println(“第三学期的课程是:“); for(int i = 0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 对象 方法
链接地址:https://www.31doc.com/p-2568767.html