JAVA程序设计实验指导书
Java程序设计实训实验指导书

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接口,打印针脚数、输入输出等信息源代码:。
《Java程序设计》课内实验指导书

北京理工大学珠海学院计算机学院《Java程序设计》课内实验指导书撰写:赵卓君2015年6月目录实验一:Java基本语法 (4)实验二:面向对象编程 (5)实验三:异常 (9)实验四:util包和集合框架 (11)实验五:io包和输入输出 (14)实验六:GUI+JDBC编程 (16)实验七:多线程 (20)实验一:Java 基本语法一、 实验目的:熟悉Java 程序的结构,并能完成一些基本的算法操作。
熟悉Java 程序的if-else 、switch-case 语句、循环语句以及数组的用法。
二、 实验要求:1、 编写一个Java Application 程序,循环打印如下图所示图案:【提示】可以将一个整数看成是ASCII 码,转换为对应的字符。
如:(char)65 得到ASCII 码65对应的字符“A ”2、 编写一个Java 程序,接受用户输入的一个1~12之间的整数月份,利用switch 语句输出对应月份的天数。
(提示:在DOS 命令窗口里编译运行该程序,如图所示:)int month=Integer.parseInt(args[0]); //在程序中用该行代码获得输入的月份3、 定义一个包含10个整数的数组,求该数组中的最大值、最小值、平均值与总和。
运行时,在该处输入的月份提示:在DOS命令窗口里编译运行该程序,如图所示:运行时,在该处输入10个整数//获取命令行输入的10个整数int[] ary=new int[10];for (int i = 0; i<ary.length; i++)ary[i]=Integer.parseInt(args[i]);实验二:面向对象编程一、实验目的:熟练掌握类的创建与使用,理解封装与抽象的概念,理解信息隐藏以及4种访问控制修饰符的用法,熟练掌握构造方法的用法。
二、实验要求:1.问题描述➢狗生活在陆地上(是一种陆生动物),既是哺乳类的也是肉食性的。
Java程序设计实训实验指导书

《JAVA 程序设计实训》实验报告班级:学号:姓名:实验一开发简单的Java应用程序一、上机目标:开发“我行我素”购物管理系统:1.制作系统登录菜单2.制作系统主菜单3.制作客户信息管理菜单二、训练技能点1.熟悉用Eclipse编写Java程序2.会使用输出语句从控制台输出信息3.会进行代码排错三、实验内容阶段1:训练要点:使用Eclipse平台开发Java程序Java输出语句需求说明:从控制台输出一行信息:欢迎使用开心购物管理系统1.0版实现思路:创建一个Java项目:ShopManagementSystem创建一个文本文件:LoginMenu1.java编写程序框架编写输出语句编写注释代码:public class LoginMenu1{public static void main(String[ ] args){System.out.println(" ");}}阶段2:需求说明:从控制台输出多行信息代码:public class LoginMenu2 {public static void main(String[] args) {/*从控制台输出信息*/System.out.println("************************************\n");System.out.println( );System.out.println( );System.out.println("************************************");}}阶段3:训练要点:使用\n和\t控制输出格式需求说明:从控制台输出购物管理系统的登录菜单实现思路:创建文件:LoginMenu.java结合使用\n和\t控制菜单输出格式代码:空行public class LoginMenu {/** 显示系统登录菜单*/public static void main(String[] args) {System.out.println("\n\n\t\t\t欢迎使用我行我素购物管理系统 1.0版\n\n");System.out.println( );System.out.println( );System.out.println("* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\n");System.out.print("请选择,输入数字:");}}阶段4:需求说明:输出两个菜单1、系统主菜单MainMenu.java代码:2、客户信息管理菜单CustMMenu.java代码:阶段5:训练要点:代码排错技巧需求说明:纠正程序中的错误,使其输出“我喜欢Java程序”public class wrongcode {public static void Main() {/*打印输出一条信息system.out.println(我喜欢Java程序)//修改为:system.out.println(“我喜欢Java程序”);加””和; }实验二变量、数据类型和运算符一、上机目标:升级“我行我素”购物管理系统,完成以下功能:•购物结算•打印购物小票•计算会员积分•模拟幸运抽奖•计算员工工资二、训练技能点:•会声明和使用变量•能熟练使用常用运算符•赋值运算符:=•算术运算符:+、- 、*、/、%三、实验内容阶段1:训练要点:运算符(*、=)、从控制台输出信息需求说明:根据购物清单及会员级别:1、计算消费金额客户购买商品单价个数折扣1 T恤¥420.78 1 9.52 网球¥453 无2、以下表形式输出结果(不要求表格边框)客户消费金额1 张三?2 李四?实现思路:声明变量存放商品信息(单价、购物个数)根据不同折扣,分别计算消费金额使用“+”连接输出信息,使用\t控制输出格式代码:public class Pay1 {public static void main(String[] args) {double shirtPrice = 420.78; //T恤单价int shirtNo = 1; //购T恤件数double tennisPrice = 45; //网球单价int tennisNo = 3; //购网球个数double shirtMoney = ; //张三消费金额double tennisMoney = ; //李四消费金额System.out.println("客户\t" + "消费金额");System.out.println("张三\t" + shirtMoney);System.out.println( );}}阶段2:需求说明:张三(享8折)购物如右表所示,结算时支付1500元1、计算消费总额并打印购物小票(如下图)商品单价个数T恤245 2网球鞋570 1网球拍320 12、计算购物获得的会员积分(100元获3分)代码:阶段3:训练要点:运算符(%、/)需求说明:幸运抽奖:凡是4位会员卡号的各个位上的数字之和大于20,则为幸运客户,有精美Mp3送上,编程计算8349各位数字之和实现思路:结合使用“/”和“%”分解获得各位数字计算各位数字之和代码:阶段4:需求说明:商场为员工提供了基本工资(3000元)、物价津贴及房租津贴,其中物价津贴为基本工资的40%,房租津贴为基本工资的25%。
Java程序设计实验指导

附一、实验报告填写方法附1.1 实验开发环境1.硬件:Intel P42.4G/256M/40G PC机一套;2.软件:Windows XP+j2sdk1.5.0+JCreator Pro3.1.0+(MS Access 2000)附1.2实验过程要求1.在上课的同时,将每个实验预习的每个例题直接完成在实验指导书上;2.在实验之前,将实验要求的程序写在草稿本上;3.每次实验之前需要把实验指导书和写有程序的草稿纸带上,以备检查,否则不能进入实验室。
4.实验过程中,不能做与实验无关的事情(如:打游戏、看其他书籍),否则本次实验成绩记0分,在遇到问题的时候举手提问,同学之间交流的声音不可太大。
附1.3实验报告内容填写1.第1页:填写(1)实验目的、(2)实验要求2.第2页~第3页:填写(3)实验程序源代码3.第4页:填写(4)实验运行结果、(5)实验总结实验一:Java基础程序设计Java程序设计语言同大多数程序设计语言一样,具有一些基本特性。
本节实验主要练习Java编程语言的这些基本特性,如Java中的简单数据类型,运算符和表达式,这是学习Java语言必须经过的基础阶段。
掌握了本节实验所讲述的内容后,应该能够对Java程序的构成有一个基本的理解,能够灵活运用Java语言提供的各种数据类型和运算符。
学好Java语言必须具备扎实的语言基础,这对后续学习是很有必要的。
Java程序通过控制语句来执行程序流,完成一定的任务。
程序流是由若干个语句组成的,语句可以是单一的一条语句,也可以是用大括号{}括起来的一个复合语句。
Java中的控制语句主要有分支语句(if-else,switch).循环语句(while,do-while,for)与程序转移有关的跳转语句(break,continue,return)。
本节实验将学习如何控制程序的流程,使程序实现不同功能。
1.1实验目的:1.掌握Java语言的数据类型。
2.掌握Java语言的运算符和表达式。
Java网络程序设计实验指导书

实验一:Java 基本语法实验目的:了解Java 的数据类型,掌握各种变量的声明方式,理解运算符的优先级,掌握Java 基本数据类型、运算符与表达式,掌握顺序结构、选择结构和循环结构语法的程序设计方法。
通过编程和上机实验理解Java 语言是如何体现面向对象编程基本思想,熟悉类的封装方法以及如何创建类和对象,熟悉成员变量和成员方法的特性,熟悉类的继承性和多态性的作用,熟悉包、接口的使用方法,掌握OOP方式进行程序设计的方法。
实验内容:1.程序代码如下编译运行程序,分析程序的运行结果。
public class TestIf {public static void main(String args[]) {boolean leap;int year=2005;if ((year%4==0 && year%100!=0) || (year%400==0))System.out.println(year+" 年是闰年");elseSystem.out.println(year+" 年不是闰年");year=2008; // 方法2if (year%4!=0)leap=false;else if (year%100!=0)leap=true;else if (year%400!=0)leap=false;elseleap=true;if (leap==true)System.out.println(year+" 年是闰年");elseSystem.out.println(year+" 年不是闰年");year=2050; // 方法3if (year%4==0) {if (year%100==0) {if (year%400==0)leap=true;elseleap=false;}elseleap=false;}elseleap=false;if (leap==true)System.out.println(year+" 年是闰年");elseSystem.out.println(year+" 年不是闰年");}}2.程序代码如下编译运行程序,分析程序的运行结果。
Java程序设计实验指导书四

实验指导四实验1:异常一、实验目的(1)理解异常处理。
二、实验任务(1)输入根据给定的Java Application程序,添加功能并写出运行结果。
(2)找出给定程序的错误,修改代码使其能编译运行,并写出运行结果。
(3)按要求填写Java Application程序,并写出运行结果。
三、实验内容1.为下面的Java Application程序,添加异常处理,并简要分析程序的运行结果。
public class RuntimeExceptionDemo01{public static void main(String args[]){String str = "123" ; // 定义字符串,全部由数字组成int temp = Integer.parseInt(str) ; // 将字符串变为int类型System.out.println(temp * temp) ; // 计算乘方}};运行结果:????2.找出给定程序的错误,修改代码使其能编译运行,并写出运行结果。
public class RuntimeExceptionDemo01{public static void main(String args[]){System.out.println(“程序运行开始”) ;Thread.sleep(30000) ;System.out.println(“程序运行结束”) ;}};运行结果:????3. 输入根据给定的Java Application程序,写出运行结果class MyException extends Exception{ // 自定义异常类,继承Exception类public MyException(String msg){super(msg) ; // 调用Exception类中有一个参数的构造方法,传递错误信息}};public class DefaultException{public static void main(String args[]){try{throw new MyException("自定义异常。
《Java语言程序设计》新版实验指导书详解
电子信息学院《JAVA语言程序设计》实验指导书陈静编写适用专业通信工程贵州大学二O一三年十月前言《JA V A语言程序设计》实验最重要的任务是发展学生的智力,即编程、上机调试能力,具体到教学内容上则是重在使学生掌握理论教学中的重点和难点,对基本能熟练掌握,提高自身的编程能力,加强素质教育。
注重从事理论研究、实验工作的能力和严谨的科学作风的培养,提倡创新精神。
通过本课程的学习,加深对面向对象编程技术基础理论、基本知识的理解,理解实验原理和实验方案,较熟练地掌握JA V A编程能力,培养良好的编程风格。
培养学生严谨的工作作风和实事求是的科学态度,为学习后继课程和未来的科学研究及实际工作打下良好的基础。
目录实验一:Java程序实现与程序结构 (4)实验二:类的使用 (13)实验三:简单计算器的Java实现 (24)实验四:Applet (34)实验五:图形用户界面 (39)实验六:图书信息管理系统 (45)实验报告的基本内容及要求 (53)贵州大学实验报告 (54)实验一:Java程序实现与程序结构实验学时:2实验类型:验证实验要求:必修一、实验目的通过本实验的学习,使学生掌握如何编译和运行Java程序,能够设置Java开发环境,为今后进一步开发Java程序奠定基础,并使学生掌握循环结构、顺序结构和选择结构的JAVA 程序编写,掌握JAVA语法基础与程序的控制结构。
二、实验内容1、设置开发环境2、编译和运行“Hello World”程序3、完成实验指导书中第一章规定的其它实验内容三、实验原理、方法和手段使用JDK软件开发包搭建JAVA开发环境,编译并成功运行出“Hello World”程序界面;使用JAVA语法,控制程序流程,完成不同功能的程序。
四、实验组织运行要求该实验以学生自主训练为主的开放模式组织教学五、实验条件PC机,jdk1.5.0,eclipcs3.2六、实验步骤1、安装JDK 5.0,安装Eclipse3.2;2、设置环境变量;3.在环境变量中设置JDK 开发环境的命令路径和类库路径,具体方法如下:我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量(假定你的j2sdk安装在C:\Program Files\Java\jdk1.5.0):环境变量配置环境变量配置为验证环境变更是否配置成功,“开始”->“运行”输入“cmd”,在命令提示符下输入java,如果出现如下图所示内容,则先注销系统,再进行测试。
JAVA程序设计实验指导书
JA V A程序设计实验指导书《JA V A程序设计》实验指导书实验指导书按章节展开,每章包含以下内容:1.概念复习和巩固题。
每次课后和上机前,请完成本章的概念复习和巩固题。
2.每章的上机实验。
每次上机实验时间为2课时。
必须在规定上机时间内,独立完成所有上机实验题的程序源代码的设计和编写,调试通过后,通过运行程序检验结果的正确性,并经实验教师检查并记录成绩。
上机实验当时未能完成的,必须在课外完成,并在下一次上机实验时请实验教师补查并登记。
每次上机实验作业均需计算机打印输出或提交服务器保存,以备在课堂上或学期末检查和复习。
3.每章的拓展上机实验。
对学有余力的学生,完成每次上机实验必须的任务后,根据个人兴趣完成该部分上机实验题。
该部分练习有些是要求调试程序使之能正确运行;有些是根据程序中的注释完成程序的编写,使之能编译通过并能正确运行。
完成这些任务,通常需要查阅JavaAPI 帮助文档。
程序中的注释都是英文,这是为了今后进一步学习的方便,熟悉与Java编程相关的英文描述将是非常有益的。
第1章Java语言基础一. 概念复习和巩固 1.下面说法正确的是( C )。
A)Java 程序的源文件名称与主类的名称相同,后缀可以是java或txt等。
B)JDK的编译命令是java。
C)一个java源程序编译后可能产生几个字节码文件。
D)在命令行运行编译好的字节码文件,只需在命令行直接键入程序名即可运行该程序。
2.下面的说法正确的是(ABCD)。
A) Java 语言是面向对象的、解释执行的网络编程语言。
B) Java 语言具有可移植性,是与平台无关的编程语言。
C) Java 语言可对内存垃圾自动收集。
D) Java 语言编写的程序虽然是“一次编译,到处运行”,但必须要java的运行环境。
3.下面main()方法的定义哪些是正确的(ACD)?A)public static void main(String args) {} B)public static void main(String) {} C)public static void main(String args) {}D)public static void main(String x) {}4.用于定义数据简单类型的一组关键字是(B)。
Java程序设计实验指导书二
实验指导二实验1:Eclipse的安装与配置一、实验目的〔1〕学习从网络上下载并安装配置Eclipse开发工具。
〔2〕学习编写简单的java程序〔3〕学习编写部署JSP工程。
二、实验任务用Eclipse完成简单的JSP页面网页三、实验容Eclipse的安装与配置1.安装Eclipse略2.Eclipse的环境配置先运行MyEclipse软件,第一次运行时需要建立一个工程文件目录,这里根据个人习惯自行建立。
进入Eclipse界面后:第一步:选择建立Java工程。
第二步:建立class文件第三步: 实现Hello World程序第四步: 用Eclipse 执行Hello World程序实验2:Java类与对象一、实验目的〔1〕掌握Java类的继承关系和派生方法。
〔2〕理解多态的概念与使用。
〔3〕掌握接口的定义和使用。
二、实验任务〔1〕按要求编写一个Java程序。
〔2〕按要求完善一个Java程序,编译、运行这个程序,并写出运行结果。
三、实验容1.编写一个Java程序片断,以定义一个表示学生的类Student。
这个类的属性有"学号〞、"班号〞、"〞、"性别〞、"年龄〞,方法有"获得学号〞、"获得班号〞、"获得性别〞、"获得〞、"获得年龄〞、"获得年龄〞。
2.为类Student增加一个方法public String toString( ),该方法把Student类的对象的所有属性信息组合成一个字符串以便输出显示。
编写一个Java Application程序,创立Student类的对象,并验证新增加的功能。
class Student{private long studentID;private int classID;private String name;private String sex;private int age;public Student(long studentID,int classID,String name,String sex,int age){ this.studentID=studentID;this.classID=classID;=name;this.sex=sex;this.age=age;}public long getStudentID(){return studentID;}public int getClassID(){return classID;}public String getName(){return name;}public String getSex(){return sex;}public int getAge(){return age;}public String toString(){return "学号:"+getStudentID()+"\n班号:"+getClassID()+"\n:"+getName()+"\n性别:"+getSex()+"\n年龄:"+getAge();}}public class StudentDemo{public static void main(String[] args){Student s1=new Student(90221,2,"Tom","male",20);}}运行结果:实验3:使用修饰符有时需要公开一些变量和方法,有时需要制止其他对象使用变量和方法,这时可以使用修饰符来实现这个目的。
Java_WEB《Web程序设计》实验指导书
W eb程序设计实验指导书1实验目的与要求 (1)2实验环境 (2)3上机环境 (2)4实验一般步骤 (3)5 实验学时 (3)6 实验内容和要求 (3)6.1JSP运行环境安装及常用HTML标记使用 (3)6.2 表格、框架网页布局的使用 (8)6.3JavaScript客户端脚本编程 (9)6.4 JSP内部对象使用 (19)6.5 JSP与JavaBean及Servlet使用 (27)6.6数据库使用及JDBC与数据库的连接 (34)6.7 JSP应用实例一网上书店前端及数据库设计 (44)6.8网上书店服务器端设计 (45)1 实验目的与要求上机操作是本课程必不可少的实践环节,主要目的是锻炼和培养学生实际操作技能和解决实际问题的能力。
要求学生掌握用JSP技术进行网络程序的设计、调试和发布的方法,熟悉用HTML标示及Dreamwear 进行页面设计的方法,通过JSP提供的各种对象和组件以及DTML提供的各种对象进行B/S架构系统设计的全过程,获得JSP技术及HTML进行实际应用的体会,加深对JSP技术和HTML 本身的理解,掌握JSP服务器端程序设计的方式和方法,掌握JSP与JavaBean 和Servlet的关系,掌握基本的JDBC连接数据库的方法,得到网络程序系统设计方法和技巧的实际训练,从而使学生能真正利用ASP技术进行动态网页的设计,进而可以开发实用的网站系统。
(1)加深对讲授内容的理解,尤其是一些语法规定,光靠课堂讲授,既枯燥无味又难以记住,但它们都很重要。
通过多次上机,就能自然地、熟练地掌握。
通过上机来掌握语法规则是行之有效的方法。
(2)熟悉所用的计算机系统的操作方法,也就是了解和熟悉HTML和JSP技术进行网络程序开发的过程和环境。
一个程序必须在一定的外部环境下才能运行,所谓“环境”,就是指所用的计算机系统过程的硬件和软件条件。
使用者应该了解为了运行一个网络程序,需要哪些必要的外部条件(例如硬件配置、软件配置),可以利用哪些系统的功能来帮助自已开发程序。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
燕山大学经济管理学院 JAVA程序设计语言 实验指导书
经济管理学院电子商务系 2010年8月 实 验 说 明 《JAVA程序设计语言》Java语言是一种完全面向对象的计算机程序设计语言,它具有“一次编写,到处运行”的跨平台特性。该课程作为电子商务专业的一门专业课,主要介绍JAVA程序设计语言的基本知识,为日后学生进一步学习J2ME或J2EE打下牢固的程序设计语言基础。 实验课是《JAVA程序设计语言》的重要实践环节。通过实验,使学生加深理解、验证、巩固课堂教学内容,加深对JAVA程序设计的过程、方法的理解,发挥学生的想象力和创新能力。本实验课程共开设5个实验项目。 实验方式与基本要求: 学生须在实验前预习相应实验内容,熟悉实验的基本原理、方法及要求、制定好上机步骤,弄清实验目的;实验每次均为2学时,学生须按时到场;要求学生掌握程序设计的各种基本方法与步骤,并在实验中得到提高。 考核及报告: 实验时立将各种问题与结果记录下来,实验内容可以通过截图等方式存入U盘,并在课后完成实验报告内容; 任课教师对每次记录都要进行检查、分析、登记; 课程总成绩应为理论考核、实验成绩的综合;其中实验课程成绩占30%,理论课成绩占70。 实验一 熟悉Java程序开发环境 一、实验目的 (1) 了解和使用J2sdk1.5.0(JDK)集成环境。 (2) 熟悉J2sdk集成环境的基本命令、功能和基本用法。并学会配置path 等环境变量 (3) 学习并熟练掌握使用J2SDK环境进Java程序开发的全过程(包括:源程序的编辑、编译、调试、运行和结果查看)。 (4) 了解和掌握JCREATOR和Eclipse集成环境的安装,简单应用。 (5) 了解Java Application和Applet程序的基本结构。 (6) 了解Java程序文件名和类名的说明方法。
二、实验内容与要求
(1) 安装Jdk1.5.0集成环境,安装成功后,配置path,classpath路径,让用户在任何目录下均可用到Java的系统资源。 设置环境变量PATH和CLASSPATH(如果在autoexec.bat中没有进行设置)。进入命令行(MS-DOS)方式,进行如下设置: SET PATH=D:\JDK1.5.0\BIN;%PATH% SET CLASSPATH=.; %CLASSPATH% (2) 安装 Jdk 1.5.0 Doc, 并查看Jdk 1.5.0 Doc 文档中,和课堂教学有关系的部分。在整个实验过程中都可以参考。 (3) 建立自己的工作目录如d:\user。以后的Java程序和过程文件均放置在此目录下。 输入一个Application源程序,学习编辑、编译、运行程序的方法。 //例1-1 文件HelloWorldApp.java如下: // HelloWorldApp.java public class HelloWorldApp{ public static void main(String args[]){ System.out.println(″Hello World!″); } }
本程序的作用是输出下面一行信息: Hello World! 现在我们可以运行该程序。首先把它放到一个名为HelloWorldApp.java的文件中,这里,这文件名应和类名相同,因为Java解释器要求公共类必须放在与其同名的文件中。然后对它进行编译: d:\user>javac HelloWorldApp.java 编译的结果是生成字节码文件HelloWorldApp.class。最后用java解释器来运行该字节码文件: d:\user>java HelloWorldApp 结果在屏幕上显示HelloWorld! (4) 输入一个applet源程序,学习编辑、编译、运行程序的方法。 简单的Applet小程序 例1-2 // HelloWorldApplet.java import java.awt.*; import java.applet.*; public class HelloWorldApplet extends Applet{ //anapplet public void paint(Graphics g){ g.drawString(″Hello World in Applet!″,20,20); } } 这个程序中没有实现main()方法,这是Applet与应用程序Application(如上例)的区别之一。为了运行该程序,首先我们也要把它放在文件HelloWorldApplet.java中,然后对它进行编译: d:\user>javac HelloWorldApplet.java 得到字节码文件HelloWorldApplet.class。由于Applet中没有main()方法作为Java解释器的入口,我们必须编写HTML文件,把该Applet嵌入其中,然后用appletviewer来运行,或在支持Java的浏览器上运行,如IE。它的文件如下: An Applet 其中用标记来启动HelloWorldApplet.code指明字节码所在的文件,width和height指明applet所占的大小,把这个HTML文件存入Example.html,然后运行: d:\user>appletviewer Example.html 这时屏幕上弹出一个窗口,其中显示Hello World in Applet!。 三、思考题 1.什么是Java虚拟机?它的作用是什么? Java虚拟机是一个想象中的能运行Java字节码的操作平台。 Java虚拟机提供了Java程序运行的必要环境,Java虚拟机上的编译器将Java源程序编译成字节码,然后经过Java解释器,就可以把字节码转换成底层平台的机器码,使得Java程序最终得以运行。总之一句话,只要计算机上有Java虚拟机,同一个Java程序就可以在不同的操作系统下运行,即Java具有可移植性。 2.Java Application程序与Java Applet程序的不同之处有那些?请各位同学收集错误代码与提示信息,以及产生错误的原因。 ①运行方式不同。Java Application可以独立运行(有java虚拟机的地方他都可以运行)。Java Applet程序不能单独运行,它必须依附于一个用HTML语言编写的网页并嵌入其中,通过与Java兼容的浏览器来控制执行。②运行工具不同。运行Java Applet程序的解释器不是独立的软件,而是嵌在浏览器中作为浏览器软件的一部分。Java Application程序被编译以后,用普通的Java 解释器就可以使其边解释边执行。③程序结构不同。每个Java Application程序必定含有一个并且只有一个main方法。以main方法为入口点开始运行。而Applet程序则没有含 main方法的主类,有一个从java.applet.Applet派生的类,它是由Java系统提供的。④Java Applet程序可以直接利用浏览器或AppletViewer提供的图形用户界面,而Java Application程序则必须另外专用代码来营建自己的图形界面。⑤受到的限制不同。Java Application程序可以设计成能进行各种操作的程序。但是Java Applet 对站 点的磁盘文件既不能进行读操作,也不能进行写操作。然而,由于 Applet的引入,使Web页面具有动态多媒体效果和可交互性能,这使由名为超文本、实为纯文本的HTML语言编写成的Web页面真正具有了超文本功能,不但可以显示文本信息,而且还可以有各种图片效果和动态图形效果,从而使页面显得生动美丽;另外,Applet使Web页面增加了按钮等功能,从而增加了交互性。 public float s1,s2,s3;//三边之长 当应用程序试图调用类(静态或实例)的指定方法,而该类已不再具有该方法的定义时,抛出该异常。通常由编译器捕获该错误;仅当类定义发生不相容的更改时,在运行时才会发生该错误。
3.列举出5种以上Java开发平台,分析他们的优缺点或特点。 ①JDK 需要有如Editplus、记事本等作为Java程序的编辑软件与JDK配合使用。 优点:方便对Java语言的学习与使用。 缺点:不如集成的环境简单、方便。 ②JCreator 小型集成视窗开发环境,但是依赖JDK 缺点:只能进行简单的程序开发,不能进行企业J2EE的开发应用。 ③Eclipse 大型集成开发环境,不带任何插件 ④JBuilder 图形界面软件 ⑤Myeclipse 集成了很多网页插件,方便做Web项目
实验二 简单数据类型和流程控制 一、实验目的 1.掌握Java语言的标识符和保留字,各简单数据类型变量以及有逻辑量意义数据的表示方法以及表示条件的表达式的类型。 2.掌握Java语言中具各种运算符表达式的基本知识。 3.熟练掌握使用if语句进行单分支结构和双分支结构程序设计的基本方法。 4.熟练掌握使用if语句的嵌套及switch语句进行多分支结构程序设计的基本方法。 5.熟练掌握while、do-while和for三种语句组成循环结构的基本方法。熟练掌握特殊流程控制语句如break,continue,标号语句。 6.熟练掌握一维数组和二维数组的使用 7.把课堂上学到的理论用于实践,并验证理论的正确性,和发现新的问题
二、实验内容与要求
1、仔细读下面的JAVA语言源程序,自己给出程序的运行结果 public class Ch21 {