欢迎来到天天文库
浏览记录
ID:44943241
大小:702.00 KB
页数:35页
时间:2019-11-05
《第4章 面向对象程序设计(下)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第4章Java面向对象程序设计(下)本章学习目标了解基本类型包装器了解对象的比较掌握抽象类、接口及内部类的定义和使用了解垃圾回收机制掌握创建jar包任务1--包装类的使用【任务内容】从命令行参数录入Person类的姓名和年龄【能力目标】学会包装类的应用掌握使用包装类进行类型转换会使用包装类解决实际问题【任务分析】按照之前学过的知识,应用程序运行时,命令行提供的参数都是以字符串的形式存储在main方法的args字符串数组中,而Person类中的年龄却是以int类型存储,那么如何将字符串类型的年龄转变成int类型的年龄?4.1包装类范例:S
2、tr2IntExam.javaJava语言是一个面向对象的语言,但是Java中的基本数据类型却不是面向对象的,这在实际使用时存在很多不便,为了解决这个不足,在设计类时为每个基本数据类型设计了一个对应的类,这八个和基本数据类型对应的类统称为包装类或数据类型类。基本类型封装类处理的数据类型charCharacter字符型数据booleanBoolean布尔型数据byteByte字节型整数数据shortShort短整型数据intInteger整型数据longLong长整型数据floatFloat单精度型浮点数据doubleDouble双精度型
3、浮点数据对于包装类来说,主要包含两种用途:1)将字符串类型转换为基本类型封装类返回类型方法描述用法举例BytebyteparseByte(Strings)parseByte(Strings,intr)bytebx=Byte.parseByte(“123”);byteby=Byte.parseByte(“1011”,2)ShortshortparseShort(Strings)parseShort(Strings,intr)shortsx=Short.parseShort(“2e”,16);IntegerintparseInt(Strin
4、gs)parseInt(Strings,intr)Strings=””673”;intix=Integer.parseInt(s);LonglongparseLong(Strings)parseLong(Strings,intr)longlx=Long.parseLong(“23427”,8);FloatfloatparseFloat(Strings)floatfx=Float.parseFloat(“382.872”);DoubledoubleparseDouble(Strings)doubledx=Double.parseDoubl
5、e(“82.382”);2)封装基本类型,将基本类型当做对象类型用。方法如下:包装类型对象=new包装类型(基本类型);包装类型对象=基本类型;包装类型对象=new包装类型(“基本类型”);例如:Integervalue1=newInteger(30);Integervalue2=newInteger(“70”);Integervalue3=value1+value2;//通过intValue()方法提取包装类的值System.out.println(value3.intValue());任务2--比较两个对象是否相等【任务内容】比较公
6、司的两个员工是否相同【能力目标】了解两个对象之间如何进行相等比较掌握用equals比较两个对象了解==运算符与equals比较对象相等的差异学会运用对象相等比较解决实际问题【任务分析】公司雇员在程序中是以对象类型存储。然而对象是复合数据类型,那么如何才能比较两个对象是否相等。4.2比较对象范例:Employee.java1.“==”运算符比较对象相等Java中,对象属于引用类型,对象实体存储在堆存储区中,对象变量位于栈存储区当中,变量中存储了对象实体在堆内存中的地址,“==”运算符只能比较对象变量中存储的地址是否相同而不能比较两个对象实
7、体的内容是否相同。2.equals()方法比较对象相等equals方法是用来比较两个对象的内容是否相等,也就是判断两个对象间各个属性的值是否相同,equals方法是在Object中定义的。在Object类中,这个方法将判断两个对象是否具有相同的引用。如果两个对象具有相同的引用,它们一定是相等的。对于多数类来说,这种判断并没有什么意义。所以开发人员应当在自己的类当中重新实现该方法。任务3--抽象类【任务内容】设计工人模块和学生模块,两个模块都有说话方法,说话的内容要由工人或学生决定,同时这两个模块应共属同一类型——人。【能力目标】了解抽象
8、类的概念掌握抽象类的定义学会运用抽象类解决实际问题【任务分析】该案例需要设计两个模块,即工人模块和学生模块,这两个模块既有相似之处,也有不同之处,为了最大限度的实现代码复用,需要设计一个公共父类,包含有两个
此文档下载收益归作者所有