欢迎来到天天文库
浏览记录
ID:48542800
大小:106.00 KB
页数:37页
时间:2020-01-23
《java面向对象程序设计课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第四章类和对象教学目标理解数据抽象和数据隐藏创建类能够创建和使用对象能够控制对实例变量和方法的访问方法的重载构造函数的使用理解this引用的用法理解Java的垃圾收集机制static方法和域的使用类的组合包的创建和使用4.1面向对象程序设计的思想4.1.1OOP思想4.1.2用类实现抽象数据类型:时钟类4.1.3类成员:构造函数、方法和域4.1.1OOP思想面向对象编程技术将数据及对数据的操作封装在一起而形成了类,类是描述相同类型的对象集合。。面向对象编程(object-orientedprogramming,OOP)就是定义这些类。类作为抽象的数据类型用于创建类的对象
2、。程序的执行,表现为一组对象之间的交互通信。对象之间通过公共接口进行通信,从而完成系统功能。对象的公共接口是该对象的应用程序编程接口(ApplicationProgrammingInterface,API),把对象的内部详细信息隐藏起来,使得对象变得抽象,将这种技术称为数据的抽象化。Java语言是完全面向对象的语言,程序的结构由一个以上的类组成。所有的过程都被封装起来,并将它们称之为方法。4.1.2用类实现抽象数据类型:时钟类类作为一种抽象的数据类型,封装了对象的数据属性和动态行为,被用来定义类的对象。下面我们将通过一个具体的实例来理解什么是类,如何定义类、创建对象和使用
3、对象。时钟类的设计:(1)数据属性:时(inthour);分(intminute);秒(intsecond)。(2)行为:设置时间setTime();显示时间toUniversalString()、toStandardString();走时(暂时不考虑);4.1.2用类实现抽象数据类型:时钟类(续)例4-1时钟类的实现。该例子包含两个文件Time1.java和TimeTest1.java。Time1.java是用于定义时钟类。TimeTest1类是一个用于测试时钟类的包含main方法的主类,在main方法中将创建Time1类的一个对象,并调用对象的公共方法。4.1.2用类
4、实现抽象数据类型:时钟类(续)Time1.java文件的代码如下:importjava.text.DecimalFormat;publicclassTime1extendsObject{privateinthour;privateintminute;privateintsecond;publicTime1(){setTime(0,0,0);}publicvoidsetTime(inth,intm,ints){hour=((h>=0&&h<24)?h:0);minute=((m>=0&&m<60)?m:0);second=((s>=0&&s<60)?s:0);}时分秒设置时
5、间4.1.2用类实现抽象数据类型:时钟类(续)publicStringtoUniversalString(){//toUniversalString方法以24时制格式显示时间DecimalFormattwoDigits=newDecimalFormat("00");returntwoDigits.format(hour)+":"+twoDigits.format(minute)+":"+twoDigits.format(second);}publicStringtoStandardString(){//toStandardString方法以12时制格式显示时间Decima
6、lFormattwoDigits=newDecimalFormat("00");return((hour==12
7、
8、hour==0)?12:hour%12)+":"+twoDigits.format(minute)+":"+twoDigits.format(second)+(hour<12?"AM":"PM");}}以24时制格式显示时间以12时制格式显示时间4.1.2用类实现抽象数据类型:时钟类(续)TimeTest1.java文件的代码://TimeTest1.javaimportjavax.swing.JOptionPane;publicclassTimeTest1
9、{publicstaticvoidmain(Stringargs[]){Time1time=newTime1();Stringoutput="Theinitialuniversaltimeis:"+time.toUniversalString()+"Theinitialstandardtimeis:"+time.toStandardString();time.setTime(13,27,6);output+="UniversaltimeaftersetTimeis:"+time.toUniversalString(
此文档下载收益归作者所有