版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
..>"Java程序设计"实验指导书太原理工大学计算机科学与技术学院〔软件学院〕目录TOC\o"1-1"\h\z\u实验1Java语言根底3实验2数组和字符串编程4实验3Java面向对象程序设计5实验4Java异常处理7实验5多线程编程9实验6图形用户界面编程11实验7输入与输出14实验8网络编程15实验9数据库编程16实验1Java语言根底通过实验,掌握Java语言程序设计的根本方法。学会Java语言中标示符的命名、运算符和表达式的应用。熟练地掌握Java程序流程控制语句的应用。编写应用程序,计算100(含100)以内所有偶数的和。"水仙花数〞是指一个3位数,其个位、十位、百位上的数字的立方和等于该数本身,例如371=33+73+13,因此371是一个水仙花数。编写程序,求所有的水仙花数。编写一个程序,求1-100间的素数。有一函数:*〔*<1〕Y=3*-2〔1≤*<10〕4*〔*≥10〕写一程序,给定*值,输出y值。使用for循环语句,编写程序输出以以下图案。☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆编写程序,输出从公元1900年到2100年所有闰年的年号,每输出5个年号换一行。判断年是否为闰年的条件是:①假设年号可以被4整除,而不能被100整除,则是闰年;②假设年号可以被400整除,也是闰年。复习本章所学内容。写出实验内容中第(2)、(3)题两个程序的源代码,作为预习报告。实验过程中,注意记录以下内容:实验过程中实验步骤及其结果。遇到的问题及解决方法。实验体会。实验2数组和字符串编程通过实验,掌握Java语言中数组、字符串程序设计的根本方法。较熟练地掌握Java程序数组的应用、字符串处理操作的方法应用。编写一个程序,在控制台输入10个数,按大小顺序输出。求一个3*3矩阵对角线元素之和。输入一段字符串,统计其中有多少个单词。〔单词用空格隔开〕将本章所学内容要点进展整理,并认真体会例题中的编程要领。写出实验内容中第(2)、(3)题两个程序的源代码,作为预习报告。实验过程中,注意记录以下内容:实验过程中实验步骤及其结果。遇到的问题及解决方法。实验体会。实验3Java面向对象程序设计掌握Java面向对象程序设计中类、继承、包和接口的概念与应用,能熟练应用方法、类、成员变量等元素。创立一个复数类comple*,以附属进展数学运算、复数具有如下格式:RealPart+ImaginaryRart*I,其中,I为-1的平方根。要求如下:利用浮点变量表示此类的私有数据。提供两个构造方法,一个用于此类声明的对象的初始化;一个为默认的无参构造方法。提供两复数加、减、乘的运算方法。按格式(a,b)打印复数。其中a为实部,b为虚部。创立银行账号Account类,实现存款(balance)的存(deposit)、取(withdraw)和查询(getbalance)等功能。编程定义一个接口,实现三个数中求最小值和最大值的方法,并将程序存放在mymaths包中。编程实现以下简单超市管理,具体要求如下:实现描述超市的类Suppermacket类,具有货架属性,记录系统中现有商品,定义盘点商品的函数check(盘点各类商品的数量,并输出盘点结果),查询商品的函数query,并显示查询结果;定义商品类Goods,具有商品名称Name,商品价格Price,商品产地Producer等属性,操作Sale〔销售商品,余额缺乏时给予提示〕、Add〔商品上架操作〕和ShowMe〔显示商品信息〕。main函数,测试以上所要求的各种功能,即可以根据菜单命令增加、删除、查询商品、盘点商品,以及商品销售和商品上架的操作提示:①超市货架可以使用商品数组,数组大小100说明存放100个商品。②注意实现商品查询的多态性,要求可以根据商品的名称或产地或价格查询商品的数量。复习本章所学内容,思考以下问题:什么是对象?什么是类?面向对象编程的特性有哪三个?它们各自有哪些特性?Java语言在面向对象编程方面有哪些独特的特点?抽象类与接口有何异同?实验过程中,注意记录以下内容:实验过程中实验步骤及其结果。遇到的问题及解决方法。(3)实验体会。实验4Java异常处理掌握异常的概念,以及如何定义、抛出和捕获处理异常。(1)做实验之前要求思考以下问题,作为预习内容;错误和异常有何区别?查看Java异常类的关系图。异常是如何抛出、捕获和处理的?Java捕获和处理异常的构造式怎样的?Try语句如何嵌套?Trow语句有何作用?Finally程序快的作用是什么?(2)运行下面的程序,理解异常的抛出、捕获与处理。Importjava.io.*;publicclassvoidmain(Stringargs[]){publicstaicvoidmain(Stringargs[]){for(inti=0;i<4;i++){intk;try{switch(i){case0://dividedbyzerointzero=0;k=911//zerobreak;case1://nullpointerintb[]=null;k=b[0];break;case2;//arrayinde*outofboundintc[]=newint[2];k=c[9];break;case3://stringinde*outofboundcharch="abc".charAt(99);break;}}catch(E*ceptione){System.out.println("\nTestcase#"+i+"\n");System.out.println(e);}}}}(3〕在实验三中的超市、商品类中创立一个自定义异常类。要求:在定义商品类时,假设销售商品数量大于余额则作为异常处理〔InsufficientFundsE*ception〕。提示:产生异常条件是*类商品销售数量大于库存额,因此是否抛出异常要先判断该条件。确定产生异常的方法,应该在sale方法中产生异常InsufficientFundsE*ception。处理异常安排在调用sale的时候,因此sale方法要声明异常,由上级方法捕获并处理。要定义好自己的异常。在实验过程中记录实验步骤及其构造。实验过程中,注意记录以下内容:实验过程中实验步骤及其结果。遇到的问题及解决方法。实验体会。实验5多线程编程(1)现成的概念、线程的生命周期。(2)多线程的编程:扩展Thread类与使用Runnable接口。(3)使用多线程机制实现动画(1)运行下面的程序,理解用创立Thread子类的方法实现多线程。Importjava.util.*;classS09_01_Threade*tendsThread{intpauseTime;Stringname;publicS09_01_Thread(int*,Stringn){pauseTime=*;name=n;}publicvoidrun(){while(true){try{system.out.println(name+":"+newDate(System.currentTimeMillis()));Tread.sleep(pauseTime);}catch(E*ceptione){System.out.println(e);}}}staticpublicvoidmain(Stringsrgs[]){S09_01_Threadtp1=newS09_01_Thread(1000,"Fast");tp1.start();S09_01_Threadtp2=newS09_01_Thread(3000,"Slow");tp2.start();}}(2)运行下面的程序,理解用实现Runnable接口的方法实现多线程。//S09_02Importjava.util.*;classS09_02_ThreadimplementsRunnable{intpauseTime;Stringname;publicS09_02_Thread(int*,Stringn){pauseTime=*;name=n;}publicvoidrun(){while(true){try{system.out.println(name+":"+newDate(System.currentTimeMillis()));Tread.sleep(pauseTime);}catch(E*ceptione){System.out.println(e);}}}staticpublicvoidmain(Stringsrgs[]){Threadt1=newThread(newS09_02_Thread(1000,"Fast"));t1.start();Threadt2=newThread(newS09_02_Thread(3000,"Slow"));t2.start();}}(3)创立简单的程序ThreeThread.java,该程序将创立三个线程,每个线程应当显示它所运行的时间〔可以考虑使用Date类或Calendar类〕。(1)将本章所学内容要点进展整理,熟练掌握线程的编程要领。(2)写出实验内容中第(3)题程序的源代码,作为预习报告。实验过程中,注意记录以下内容:实验过程中实验步骤及其结果。遇到的问题及解决方法。实验体会。实验6图形用户界面编程掌握文本组件、按钮和单、复选按钮组件的使用;掌握列表的使用,鼠标、键盘事件的处理;掌握布局控制的方法。(1)编写一个Applet程序响应鼠标事件,当鼠标事件发生时,在状态条显示相应的时间信息。提示:使用showStatus(字符串)方法。(2)完成图6-1所示的GUI布局管理,不需要实现功能。图6-1要实现的GUI布局管理(3)试设计一窗口,内含一个按钮。开场运行时,按钮显示"ClickMe〞字样,当按钮按下时,按钮显示为"ClickMeAgain〞字样,再按一次,则按钮显示"ClickMe〞字样,依次循环。(4)仿照Windows2000/*P系统提供扫雷游戏编写一个类似功能和界面的扫雷程序。(5)编写一个简易文本编辑器,参考界面如图6-2所示。图6-2简易文本编辑器运行效果图要求:包含根本的翻开、保存、新建等功能。包含菜单,能够对文本的字体类型和颜色进展设置,力求界面美观。复习本章所学内容,思考以下问题:Java语言是跨平台的编程语言,则图形用户界面如何做到跨平台?AWT有哪些组件和容器?它们各自的使用方法是什么?AWT的事件处理模型是什么?原理又如何?什么是Swing?它和AWT比有什么优点?使用上有什么区别?实验过程中,注意记录以下内容:实验过程中实验步骤及其结果。遇到的问题及解决方法。实验体会。实验7输入与输出(1)掌握Java两种根本输入/输出流类的使用。(2)掌握Java文件类型的使用。(3)掌握文件的输入、输出方法。(1)编写程序,实现从键盘输入字符串并在屏幕上输出。(2)利用Java文件类File的方法,获取磁盘文件的文件名、长度、大小等特性。(3)编写程序,利用Java字符流文件输入/输出类,实现将源程序复制到另一个文件中。〔4〕编写一个程序,比较两个文件的内容是否一样。〔5〕编写一个程序,求2~200之间的素数,并将结果保存在文件prime.dat中。再从该文件中读取内容并在屏幕上显示出来。(1)将本章所学内容要点进展整理,熟练掌握网络的编程要领。(2)写出实验内容中的源代码,作预习报告。实验过程中,注意记录以下内容:实验过程中实验步骤及其结果。遇到的问题及解决方法。实验体会。实验8网络编程掌握TCP编程:Sodk
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 布鞋制作工岗中细节管理考核试卷含答案
- 黄酒培菌工岗位实习生考核试卷含答案
- 裁切工安全知识竞赛强化考核试卷含答案
- 2025-2026学年凡训蒙说课稿
- 2025-2026学年大班静电活动说课稿
- 2025-2026学年嘎达梅林说课稿英语作文
- 深圳户口加租房合同范本
- 2026年水资源管理行业产业链安全评估报告及未来五至十年品牌溢价与忠诚度管理
- 药店工作的个人工作总结(2篇)
- (豫陕冀晋青)五省联考2027届高三高考适应性考试语文试题(含答案)
- 初中物理八年级下册《摩擦力》教学设计
- 岳阳观盛投资发展有限公司招聘笔试题库2026
- 空调水管道试压冲洗专项方案
- 2026年辽宁省铁岭市西丰县第二中学中考二模数学试题(含答案)
- 2026年九省联考化学答案及试卷
- 2026全国高考体育单招考试语文试题试题(含答案)
- 2026年大学生人文知识竞赛题库及答案
- 2025年管理岗面试试题及答案
- 2025西藏拉萨市大学生村(居)科技专干、医务人员、农业农村工作专员和乡村幼教人员补聘141人笔试备考题库及答案解析
- 水池工程施工方案(3篇)
- 肠内肠外营养的护理常规
评论
0/150
提交评论