【免费下载】Java程序设计实验指导书 my
- 格式:pdf
- 大小:254.83 KB
- 文档页数:12


实验一基本数据类型与控制语句一、实验目的及要求1.安装并配置Java运行开发环境;2.掌握开发Java应用程序的3个步骤:编写源文件、编译源文件和运行应用程序;3.学习同时编译多个Java源文件;4.掌握char型数据和int型数据之间的相互转换,同时了解unicode字符表;5.掌握使用if…else分支和while循环语句解决问题。
二、实验学时6学时三、实验任务1.安装JDK,设置环境变量PATH和CLASSPATH。
1)下载JDK为了建立基于SDK的java运行环境,需要先下载sun的免费SDK软件包。
在浏览器中输入进入sun公司官方网站页面。
在页面右边“Popular Downloads”栏中可看到最新版的JDK软件包(),并下载。
2)安装JDK运行下载的“jdk-6”软件包,在安装过程中可以设置安装路径及选择组件,默认的组件选择是全部安装,安装成功后,其中bin文件夹中包含编译器()、解释器()、Applet查看器()等可执行文件,lib 文件夹中包含了所有的类库以便开发Java程序使用,demo文件夹中包含开源代码程序实例。
3)JDK中主要文件夹和文件安装成功后,d:\java\jdk1.6中bin文件夹中包含编译器()、解释器()、Applet查看器()等可执行文件,lib文件夹中包含了所有的类库以便开发Java程序使用,sample文件夹包含开源代码程序实例,src压缩文件中包含类库开源代码。
设置环境变量JDK中的工具都是命令行工具,需要从命令行即MS-DOS提示符下运行它们。
以Windows XP为例说明设置过程。
右击桌面“我的电脑”图标,选择“属性”菜单在“高级”选项卡中单击“环境变量”按钮,将出现“环境变量”设置界面在“系统变量”框中点击“新建”按钮,在出现的“编辑系统变量”对话框中,在“变量名”栏的文本框内输入“JavaHome”,在变量值栏的文本框内输入“d:\java\jdk1.6”(即jdk安装的主目录)在“系统变量”框中选择“path”,然后单击“编辑”按钮,在出现的“编辑系统变量”对话框中,在“变量值”栏的命令后添加“;%JavaHome%\bin”。
JA V A程序设计实验指导书撰写者:陈洺均单位:信息工程系2011-08-15实验一在DOS环境下编译和运行Application和Applet程序实验目的:(1)熟悉JDK7.0工作环境。
(2)掌握开发JA V A应用程序和Applet程序的步骤:编写源文件、编译源文件和运行文件。
(3)掌握JDK7.0提供的开发工具javac、java、appletviewer的使用方法。
实验要求:(1)编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和自己的学号和姓名。
(2)使用文本编辑器编写一个Java applet程序,在Applet显示窗口中显示“HelloWorld”,并通过以下两种方式来运行改程序:在DOS环境下编译后直接在浏览器中运行该程序和是使用appletviewer来运行该程序。
实验步骤:1、在DOS环境下编译运行Application(1)下载安装Jdk7.0,配置环境变量JDK7.0是最新的Java EE的安装包,首先通过官方网站下载该安装包进行应用程序的安装,下面是安装jdk的步骤:①双击下载的jdk-7-windo ws-i586.exe。
②选择安装路径,默认的安装路径是(C:\P rogr a mfile s\J a va\jdk1.7.0),可以根据你实际的安装路径修改;在安装J DK1.6时,会同时安装好J RE1.7,默认的安装路径为(C:\P rogr a m f iles\J a va\jr e7)。
⑵安装完jd k后,我们要设置J a va环境变量,设置J a va环境变量的步骤如下:①点击“我的电脑”右键――属性――高级――环境变量;在环境变量对话框的系统变量栏中点击新建,在弹出的新建系统变量中设置:变量名:J AVA_HOME变量值:C:\P rogra mFiles\J a va\jdk1.7.0(根据你的实际安装路径填写)②在系统变量中找到path变量――点击编辑,在变量值的最前面添加值C:\Progr am Fil es\J ava\jdk1.7.0\b in; (根据你的实际安装路径填写)③在系统变量中新建classpath,变量值.;C:\Program Files\Java\jdk1.6.0_07\lib\dt.jar;C:\Program Files\Java\jdk1.6.0_07\lib\tools.jar; (根据你的实际安装路径填写)最后:点击确定,环境变量设置成功。
J a v a程序设计实训实验指导书公司内部编号:(GOOD-TMMT-MMUT-UUPTY-UUYY-DTTI-《JAVA 程序设计实训》实验报告班级:学号:姓名:实验一开发简单的Java应用程序一、上机目标:开发“我行我素”购物管理系统:1.制作系统登录菜单2.制作系统主菜单3.制作客户信息管理菜单二、训练技能点1.熟悉用Eclipse编写Java程序2.会使用输出语句从控制台输出信息3.会进行代码排错三、实验内容阶段1:训练要点:使用Eclipse平台开发Java程序Java输出语句需求说明:从控制台输出一行信息:欢迎使用开心购物管理系统版实现思路:创建一个Java项目:ShopManagementSystem创建一个文本文件:编写程序框架编写输出语句编写注释代码:public class LoginMenu1{public static void main(String[ ] args){ ");}}阶段2:需求说明:从控制台输出多行信息空行代码:public class LoginMenu2 {public static void main(String[] args) {/*从控制台输出信息*/););}}阶段3:训练要点:使用\n和\t控制输出格式需求说明:从控制台输出购物管理系统的登录菜单实现思路:创建文件:结合使用\n和\t控制菜单输出格式代码:public class LoginMenu {/** 显示系统登录菜单*/public static void main(String[] args) {););}}阶段4:需求说明:输出两个菜单1、系统主菜单代码:2、客户信息管理菜单代码:阶段5:训练要点:代码排错技巧需求说明:纠正程序中的错误,使其输出“我喜欢Java程序”public class wrongcode {public static void Main() {/*打印输出一条信息100米0.1米1900年1月1日1900年1月1日1900年1月1日1900年1月1日1900年1月1日1900年1月1日1900年1月1日1900年1月1日0000”程序入口菜单类客户管理类数据传递购物结算类礼品管理类showL oginMenu();源代码:阶段2:需求说明:扩展购物结算,自动计算会员折扣:1、已知会员号,根据会员号查找目前的积分2、计算会员所享受的折扣代码:阶段3:训练要点:StringBuffer需求说明:基于阶段3扩展购物结算程序:1、使用StringBuffer存储购物信息(商品名、数量和消费额)2、打印购物小票3、测试系统购物结算功能实现思路及关键代码:创建StringBuffer对象存储购物信息StringBuffer goodsList = new StringBuffer();使用StringBuffer的append()方法连接购物信息("\n" + name + "\t" + "¥" + price+ "\t\t" + count + "\t\t" + "¥" + (price * count) +"\t");打印购物小票在Menu类中添加代码测试购物结算程序Pay pay = new Pay(); //购物结算(goodsName, goodsPrice, custNo, custBirth, custScore);();源代码:阶段4:需求说明:阅读Pay类的方法returnLastMenu(),并将代码补充完整测试该方法代码:实验十一类和对象综合训练(阶段练习)一、上机目标–类和对象综合训练二、训练技能点•会定义类,描述类的属性和方法•会创建和使用对象•会使用包组织Java工程三、实验内容实现人机互动版猜拳游戏,运行效果如下图所示:、阶段划分:•第一部分:阶段小结–阶段小结–上机、作业共性问题讲解•第二部分:练习(120分钟)–阶段1分析业务;抽象出类;描述类的特征和行为;创建用户类–阶段2创建计算机类–阶段3创建游戏类,编写它的方法:初始化、计算对战结果、显示结果–阶段4编写游戏类的方法:开始游戏–阶段5编写入口程序•第三部分(20分钟)–总结•会定义类,描述类的特征和行为–如何定义类的一个方法–类和对象的区别•会创建和使用对象–创建对象的语法–如何使用别的对象的方法如何使用同一个类的方法–程序入口main方法可以直接使用类的方法吗•会使用包组织Java工程–为什么需要使用包它的含义在程序中的位置–什么情况下要导入包,举例–语法结构、阶段1需求说明:分析业务抽象出类、类的特征和行为创建用户类实现思路及关键代码:分析业务,抽象出类、类的特征和行为创建用户类:属性:名称(初始值为“匿名”)、积分(初始值为0)方法:出拳、阶段2需求说明:创建计算机类属性:名称(初始值为“匿名”)、积分(初始值为0)方法:出拳代码:、阶段3需求说明:创建游戏类属性:甲方玩家(用户)、乙方玩家(计算机)、对战次数编写游戏类方法1——初始化编写游戏类方法2——计算并返回对战结果编写游戏类方法3——显示对战结果代码:、阶段4需求说明:编写游戏类方法4——开始游戏代码:、阶段5需求说明:编写系统入口程序,调试运行、总结实验十二综合练习一、上机任务基础部分总复习二、训练技能点1、理解程序基本概念——程序、变量、数据类型2、会使用顺序、分支、循环、跳转语句编写程序3、会使用数组、操作字符串4、会定义类、创建和使用对象三、实验内容开发迷你DVD管理器(MiniDVD Mgr ),实现:1、DVD信息查询2、DVD借出管理任务分解:阶段1:运行入口程序,显示系统菜单,支持菜单选择阶段2 :可进行DVD信息查询,查询完毕返回主菜单阶段3 :实现管理DVD借出的功能,修改借出状态后返回主菜单阶段1:需求说明:编写DVDSet类:初始化当前DVD信息编写DVDMgr类1、setData方法加载数据信息2、startMenu方法显示管理器菜单,支持菜单选择实现思路及关键代码:运行效果:源代码:阶段2:需求说明:扩展DVDMgr类:1、编写search方法:显示DVD信息(名称、借出状态)2、编写returnMain方法:输入0返回主菜单实现思路及关键代码:运行效果:源代码:阶段3:需求说明:扩展DVDMgr类:编写lend方法: 输入要借的DVD名称,修改DVD状态实现思路及关键代码:运行效果:源代码:实验十三面向对象的Java实现-封装一、上机目标使用Eclipse编写版块类、帖子类、用户类具有如下功能:–版块类封装版块的基本属性,可以设置和输出版块的信息–帖子类封装帖子的基本属性,可以设置和输出帖子的信息–用户类封装用户的基本属性,可以设置和输出用户的信息二、训练技能点•会使用封装的方式编写类•会为类添加私有属性•会编写构造方法,重载构造方法•会使用setter/getter方法三、实验内容阶段1:训练要点:私有属性,封装需求说明:创建帖子类类名Tip属性title:Stringcontent:StringpublishTime:Stringuid:int方法getInfo() :void实现思路及关键代码:创建帖子类:Tip声明私有属性并初始化帖子属性:String titleString contentString publishTimeint uid编写方法getInfo(),输出帖子基本信息创建测试类,编写main方法调用帖子的getInfo()方法运行效果:源代码:阶段2:需求说明:创建版块类和用户类类名Board User属性boardId:intboardName:StringparentId:int uId:int uName:String uPass:String方法getBoardInfo() :void getUserInfo() :void代码:阶段3:训练要点:构造方法,重载构造方法需求说明:使用无参构造方法初试化帖子对象使用有参构造方法初试化帖子对象实现思路及关键代码:1、为帖子类编写无参构造方法,初始化帖子对象,并输出“帖子类的无参构造方法”2、为帖子类编写有参构造方法,初始化titile,content,publishTime,并输出“帖子类的有参构造方法”3、使用无参构造方法创建帖子对象,调用getInfo()输出信息4、使用有参构造方法创建帖子对象,调用getInfo()输出信息运行效果如下:源代码:阶段4:错误现象:测试类直接访问帖子对象和用户对象的private属性解决方法:为private属性添加setter/getter方法需求说明:为所有private属性添加setter/getter方法,并在测试类中使用代码:实验十四面向对象的Java实现-继承和多态一、上机目标使用Eclipse编写主题类、回复类要求如下:– 主题类继承帖子类 ,并增加属性:主题id ,版块id – 回复类继承帖子类 ,并增加属性:回复id ,主题id – 在帖子类中实现多态– 使用super 调用父类构造方法二、训练技能点• 会使用继承的方式编写子类• 会使用多态的方式编写程序• 会使用super 调用父类构造方法三、实验内容阶段1:训练要点:继承需求说明:创建主题类,继承帖子类主题类结构:帖子类结构: 类名 Tip属性 title :Stringcontent :StringpublishTime :Stringuid :int方法 getInfo() :void类名 Topic属性 topicId :intboardId :int实现思路及关键代码:1、创建主题类:Topic,继承帖子类:Tip2、增加以下属性主题id:int topicId版块id:int boardId3、添加setter/getter方法4、使用从帖子类继承来的getInfo()方法,输出主题信息运行效果:源代码:阶段2:需求说明:1、创建回复类:Reply ,继承帖子类:Tip2、增加以下属性回复id:int replyId主题id:int topicId3、添加setter/getter方法4、使用从帖子类继承来的getInfo()方法,输出回复信息运行效果:代码:阶段3:训练要点:多态需求说明:主题类、回复类重写帖子类输出信息的方法实现思路及关键代码:1、主题类重写getInfo()方法,输出主题信息2、回复类重写getInfo()方法,输出回复信息3、在测试类中使用多态的方式调用getInfo()方法运行效果如下:源代码:阶段4:需求说明:1、为主题类添加无参构造方法,在该方法中使用 super();,并输出“主题类的无参构造方法”2、为主题类添加有参构造方法,参数同Tip类有参构造方法,在该方法中使用 super(pTitle, pContent, pTime);,并输出“主题类的有参构造方法”3、使用测试类测试主题类构造方法实现思路及关键代码:运行效果如下:源代码:实验十五面向对象的Java实现-接口一、上机目标使用Eclipse 编写接口和实现类,要求如下:–定义数据访问接口用户数据访问接口:UserDao版块数据访问接口:BoardDao主题数据访问接口:TopicDao回复数据访问接口:ReplyDao–编写UserDao接口的实现类:UserDaoImpl–使用多态的方式调用UserDao接口的方法二、训练技能点•会编写接口•会实现接口•会使用接口三、实验内容阶段1:训练要点:定义接口需求说明:定义接口:用户Dao接口、主题Dao接口接口UserDao TopicDao方法查找用户增加用户修改用户查找主题增加主题修改主题删除主题实现思路及关键代码:UserDao接口实现思路1、定义接口:UserDao2、声明UserDao接口的方法查找用户:public User findUser(String uName);增加用户:public int addUser(User user);修改用户:public int updateUser(User user);TopicDao 接口实现思路1、定义接口: TopicDao2、声明UserDao接口的方法查找主题:public Topic findTopic(int topicId);增加主题:public int addTopic(Topic topic);删除主题:public int deleteTopic(int topicId);修改主题:public int updateTopic(Topic topic);源代码:UserDaoTopicDao阶段2:需求说明:定义接口:版块Dao接口、回复Dao接口接口BoardDao ReplyDao方法增加论坛版块增加回复信息删除回复信息修改回复信息运行效果:代码:BoardDao代码ReplyDao代码阶段3:训练要点:实现接口,使用多态需求说明:实现UserDao接口,使用接口和实现类实现多态实现思路及关键代码:1、定义UserDao接口的实现类:UserDaoImpl2、实现UserDao接口所有的方法3、在测试类中使用UserDao接口和其实现类实现多态运行效果如下:源代码:阶段4:需求说明:1、为User类添加表示性别的属性:int gender,及对应的setter/getter方法,修改getUserInfo()方法,增加性别的输出2、在UserDao接口中添加性别常量3、在测试类中使用该常量实现思路及关键代码:运行效果如下:源代码:实验十六使用异常处理程序错误一、上机目标使用UserDaoImpl类、User类完成如下功能:–对空的User对象调用getUserInfo()方法抛出的异常进行处理–修改UserDaoImpl,要求用户id不能修改,修改则抛异常–使用log4j输出日志信息二、训练技能点•会使用try/catch/finally捕获和处理异常•会使用throw和throws抛出异常•会使用log4j记录日志三、实验内容阶段1:训练要点:异常,异常处理需求说明:使用UserDaoImpl的查找方法,查找一个不存在的用户,并试图输出用户信息使用try/catch对抛出的异常进行处理实现思路及关键代码:1、向UserDaoImpl中添加用户,然后查找并输出该用户信息2、使用不存在的用户名查找用户,并试图输出用户信息3、对抛出的异常使用try/catch进行异常处理运行效果如下:源代码:阶段2:需求说明:1、对阶段1的异常使用try/catch/finally进行异常处理2 、finally块输出是否抛出了异常运行效果:代码:阶段3:训练要点:throw,throws需求说明:修改UserDaoImpl的updateUser(User user)方法:如果用户id被修改,则:1、不执行更新2、抛出一个Exception异常3、异常消息是“用户id不能修改”实现思路及关键代码:1、修改UserDao的updateUser(User user)方法,声明抛出异常2、修改UserDaoImpl的updateUser(User user)方法,加入判断语句,并抛出异常if( ()!=i ){throw new Exception("用户id不能修改");}3、在测试类中调用,并进行异常处理运行效果如下:源代码:阶段4:需求说明:1、使用log4j输出日志信息2、查看输出的日志信息实现思路及关键代码:运行效果如下:源代码:实验十七面向对象部分综合训练一、上机目标1、使用面向对象描述计算机输出图像的过程2、使用面向对象的方式描述计算的接口和驱动二、训练技能点1、能理解并会使用面向对象的特性 -- 封装、继承、多态2、会使用接口设计、编写程序3、会使用Java的异常处理机制进行异常处理三、实验内容阶段1:训练要点:综合运用需求说明:1、编写类描述计算机的主机主机类硬盘类属性计算机的主机包括主板、CPU、内存、硬盘数据(整形数组)方法从硬盘读取数据向硬盘写入数据构造方法读、写硬盘的方法2、编写类描述计算机的输入输出设备实现思路及关键代码:源代码:阶段2:需求说明:1、编写计算机类输出图像计算机类属性主机、显示器、键盘方法构造方法(初始化)显示图形方法(通过主机读取数据,通过显示器显示)代码:阶段3:需求说明:1、编写Java接口和类:模拟计算机的接口及驱动接口驱动输入输出接口,输入输出方法USB接口,继承输入输出接口,增加常量——针脚数(4个)实现USB接口,打印针脚数、输入输出等信息VGA接口,继承输入输出接口,增加常量——针脚数(15个)实现VGA接口,打印针脚数、输入输出等信息源代码:。
第Ⅰ部分:实验指导实验1:Java开发环境J2SE一、实验目的(1)学习从网络上下载并安装J2SE开发工具。
(2)学习编写简单的Java Application程序.(3)了解Java源代码、字节码文件,掌握Java程序的编辑、编译和运行过程。
二、实验设备要求JDK 6.0、JCreator和NetBeans 6.9三、实验内容1.安装J2SE开发工具Sun公司为所有的java程序员提供了一套免费的java开发和运行环境,取名为Java 2 SDK,可以从上进行下载。
安装的时候可以选择安装到任意的硬盘驱动器上,例如安装到C:\j2sdk1.6.0_21目录下。
教师通过大屏幕演示J2SE的安装过程,以及在Windows98/2000/2003下环境变量的设置方法。
2.安装J2SE源代码编辑工具Edit Plus教师通过大屏幕演示Edit Plus的安装过程,以及在Windows98/2000/2003操作系统环境下编辑Java 原程序的常用命令的用法。
3.编写并编译、运行一个Java Application程序。
创建一个名为HelloWorldApp的java Application程序,在屏幕上简单的显示一句话"老师,你好!"。
4.编译并运行下面的Java Application程序,写出运行结果。
1:public class MyClass {2:private int day;3:private int month;4:private int year;5:public MyClass() {6:day = 1;7:month = 1;8:year = 1900;9:}10:public MyClass(int d,int m,int y) {11:day = d;12:month = m;13:year = y;14:}15:public void display(){16:System.out.println(day + "-" + month + "-" + year);17:}18:public static void main(String args[ ]) {19:MyClass m1 = new MyClass();20:MyClass m2 = new MyClass(25,12,2001);21:m1.display();22:m2.display();23:}24:}实验2:Java基本数据类型一、实验目的(1)掌握javadoc文档化工具的使用方法。