已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、程序填空题(本大题共15空,每空2分,共30分)1下面的程序定义了一个线程类,请根据注释把程序补充完整。public class MyThread implements private int num = 0;private boolean stop = false; / 循环显示线程名和当前的num值,然后睡眠200毫秒后,继续,直到变量/ stop为true为止。public void run() while(!stop)/ 返回当前线程的名称String threadName = Thread.currentThread().getName();System.out.println(threadName+:+num);num+;try/ 睡眠200毫秒 ;catch(InterruptedException e)e.printStackTrace(); / 设置变量的值,可以终止线程循环的执行。public void terminal() ;public boolean isStop() return stop;public void setStop(boolean stop) this.stop = stop;2下面是一个使用Socket通信的程序,实现服务器端fileServer向客户端fileClient传送一个文件,传送完毕后程序结束,服务器端IP为6,服务器端程序和客户端不在同一电脑。请根据注释把程序补充完整。 /服务器端程序 import .*; import java.io.*; class fileServer OutputStream os; BufferedOutputStream bw; String downFile; Socket client; public fileServer(String downFile) try ServerSocket ss=new ServerSocket(1234); client= ; /等待客户 this.downFile=downFile; os=client.getOutputStream(); bw=new BufferedOutputStream(os); catch(Exception e)System.out.println(e.toString(); public void sendFile() try /生成downFile的文件字节输入流并对其进行缓冲 BufferedInputStream stdin= new BufferedInputStream(new ); int count; byte ch=new byte256; System.out.println(开始传送); while(count=stdin.read(ch)!=-1) bw. ; /将ch数组中前count个字节写到bw中 bw.flush(); System.out.println(传送结束); bw.close(); os.close(); catch(Exception e)System.out.println(e.toString(); public static void main(String args) try fileServer s=new fileServer(args0); s.sendFile(); catch(Exception e)System.out.println(e.toString(); /客户端程序 import .*; import java.io.*; class fileClient extends Thread InputStream is; BufferedInputStream br; Socket client; String downFile; public fileClient(String downFile) try this.downFile=downFile; client=new ; /Socket对象连接服务器6端口1234 is=client.getInputStream(); br=new BufferedInputStream(is); catch(Exception e)e.printStackTrace(); public void receive() try /生成downFile的文件字节输出流并对其进行缓冲 BufferedOutputStream bos= new BufferedOutputStream(new ); int count; byte ch=new byte256; System.out.println(开始接收); while(count=br.read(ch) != -1) bos.write(ch); bos.flush(); System.out.println(接收完毕); bos.close(); br.close(); is.close(); catch(Exception e) System.out.println(e.toString(); public static void main(String args) fileClient c=new fileClient(args0); c.receive(); 3下面程序是将从键盘上输入的一个实数和一串字符串保存到文件data.txt中。程序不完整,请填充完整。public class datareadwrite public static void main(String args)DataInputStream r;DataOutputStream w=null;r=new DataInputStream(System.in);tryFile f1=new File( );FileOutputStream ff=new ; w=new DataOutputStream(ff);catch(FileNotFoundException fe) trySystem.out.print(输入整数:); w.write(r.readInt(); System.out.print(输入实数); (r.readFloat(); System.out.print(输入字符串:); w.writeChars(r.readLine();catch(IOException e) 4、下面程序是在一个JFrame中有两个文本域t和t1。当在t中输入内容并回车后,所输入的内容在文本域t1中显示。程序不完整,请填充完整。public class jtextfield implements ActionListener JFrame f;JTextField t,t1; public static void main(String args)jtextfield jt=new jtextfield();jt.pp(); void pp()f=new JFrame(jtextfield 演示); f.getContentPane().setLayout(new FlowLayout(); t=new JTextField(文本域演示,25); t1=new JTextField(25); t.setSize(140,150); t. ; /注册监听 t1.setText(this is a string); f.getContentPane().add(t); f.getContentPane().add(t1); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.pack(); f.setSize(400,250); ; /设置窗体可见public void actionPerformed(ActionEvent e)t1.setText( );二、(10分)编写一个Java Application应用程序,统计个位数是6,并且能被3整除的5位数共有多少个?。三、(10分)设计一个java程序,从键盘上输入某班课程的考试成绩(假设一个班有n名学生),然后根据分数按照从高到低的顺序重新排列。四、(20分)编写一个接口的程序(内容如下)。要求设计接口,设计实现接口的类并实现接口中的内容。(1)定义接口Bank,该类中定义常量有:oneyearRate(一年定期利率为0.035)、oneyearNationaldebt(一年国债利率为:0.04)和interestRate(按年计算的活期利率为0.01), 定义的抽象方法有count方法和show()方法。其中count()方法计算存款一年所得的总金额(原存款额+税后利息),show()方法用于显示总金额。(2) 由于定期存款、活期存款和国债的利率不同,因此定义3个子类来表示这3种储蓄,3个子类名称为: OneyearRateCalcute、OneyearNationaldebtCalcute、InterestRateCalcute。3个子类都继承了Bank类。(3)编写测试类:要求在主函数中定义一个 Bank接口的数组,如Bank b=new Bank3;用3 个子类对其实例化,并显示结果。五、(20分)现有一个数据库Student,库中有一个表stuInfo,表中的字段有学号、姓名、专业、成绩。数据库驱动为:com.microsoft.sqlserver.jdbc.SQLServerDriver或者使用sun.jdbc.odbc.JdbcOdbcDriver,其中数据源名称为star,用户名:sa,密码:123456。 要求:(1) 编写方法public Connection getConnection(),用来实现数据库的连接。(2) 编程方法public void update(),修改数据库表中的记录修改前内容为: 学号:20080003,姓名:李平,专业:电子,成绩:70 修改后内容为: 学号:20080003,姓名:王宏,专业:计算机,成绩:90 要求使用PreparedStatement接口提供的setXxx()方法来设定值。修改后,数据表内容如下: (3)进行测试。注意:相应内容必须进行异常处理。六、(10分)编程使用LinkedList类,实现商品的添加与显示。 (1) 定义一个商品Goods类,1)它的属性有:name,表示商品的名称;price,表示商品的价格 2)它的方法有:有一个构造方法,能实现对商品名称和价格进行初始化 getXxx()方法:得到属性值的方法。其中XX表示类中的各属性名。 setXxx(dd)方法:各属性值设置方法,其中XX表示类中的各属性名。(2)创建测试类。 创建至少3个Goods对象,将其添加到LinkedList类中,然后使用iterator来迭代输出每种商品的名称和价格 提示:注意泛型的使用。 装 订 线课程名称: java程序设计 考试时间: 110 分钟 课程代码: 8421991 试卷总分: 100 分一、程序填空题(本大题共15空,每空2分,共30分)评分标准:填空正确一个得2分,不填或填错得0分。1参考答案:1)、implements2)、run()3)、Thread.sleep(200);4)、setStop(true);2、参考答案:1) ss.accept();2) FileInputStream(downfile);3) write(ch,0,count);4) Socket(6,1234);5) FileOutputStream(downfile);3、参考答案:1)、”data.txt”2)、FileOutputStream(f1)3)、w.writeFloat4、参考答案:1)、addActionListener(this)2)、f.setVisible(true)3)、t.getText()二、(10分)参考答案及评分标准public class Test1_2 /1分public static void main(String args) /2分int num=0; /1分for(int i=10000;i=99999;i+) /2分if(i%10= =6 & i%3 = =0) /2分num+; /1分System.out.println(“共有”+num+”个”);/ 1分三、(10分)参考答案及评分标准import java.util.Arrays;import java.util.Scanner;public class class2 int n; /1分float cj;class2(int m) n=m;cj=new floatm; /1分void input() /2分 Scanner sc=new Scanner(System.in); for(int i=0;icj.length;i+) cji=sc.nextFloat();void Sort() /2分 for(int i=0;icj.length;i+) cji=-cji; Arrays.sort(cj); for(int i=0;icj.length;i+) cji=-cji;void print() /2分 for(int i=0;icj.length;i+) System.out.print(cji+ ); System.out.println(); public static void main(String args) class2 c2=new class2(5); /1分 c2.input(); c2.Sort(); /1分 c2.print(); 四、(20分)参考答案评分标准:根据设计结果,酌情给步骤分interface Bank float oneyearRate=0.035f; /定期利率float oneyearNationaldebt=0.04f; /定期利率float interestRate=0.01f; /定期利率abstract void count();abstract void show();class OneyearRateCalute implements Bank private float saving; /原存款金额private double sum; /一年后的总金额OneyearRateCalute(float i)saving=i;count();public void count() sum=saving+(saving*Bank.oneyearRate); public void show() System.out.println(定期利率, sum=+sum);class OneyearNationaldebtCalcute implements Bankprivate float saving;private double sum;OneyearNationaldebtCalcute(float i)saving=i;count();public void count() sum=saving+(saving*Bank.oneyearNationaldebt); public void show() System.out.println(国债利率, sum=+sum);class InterestRateCalcute implements Bankprivate float saving;private double sum;InterestRateCalcute(float i)saving=i;count();public void count() sum=saving+(saving*BerestRate); public void show() System.out.println(活期利率, sum=+sum);public class Calculate public static void main(String args) int money=10000;Bank b=new Bank3;b0=new OneyearRateCalute(money);b1=new OneyearNationaldebtCalcute(money);b2=new InterestRateCalcute(money);for(int i=0;ib.length;i+)bi.show();五、(20分)参考答案及评分标准import java.sql.*;public class Student public static void main(String args) /2分Student s=new Student();s.update();public Connection getConnection() /3分String driver=com.microsoft.sqlserver.jdbc.SQLServerDriver;String url=jdbc:sqlserver:/localhost:1433;DatabaseName=Student; try Class.forName(driver); /2分return DriverManager.getConnection(url,sa,123456); /2分 catch (Exception e) e.printStackTrace();return null;public void update() /5分Connection conn=this.getConnection(); /2分String sql=update stuInfo set stuname=?,stumajor=?,stuscore=? where stuid=?; /2分try PreparedStatement pstmt=conn.prepareStatement(sql); /2分pstmt.setString(1, 王宏);pstmt.setStr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 美的集团财务部总经理的年度规划
- 一汽大众汽车风险管理体系及法规布局规划书
- 中国南方航空招聘面试流程解析
- 服装设计师创意面试指导
- 美容院店长选拔与面试技巧指南
- 卖家大学学习地图-
- 设计工程师团队沟通与协作技巧
- 电力行业技术专家招聘面试全攻略
- 电力行业人力资源主管的工作计划及执行
- 保险公司高级理财顾问面试宝典
- 施工现场节后复工安全教育培训
- 车辆智能共享出行技术课件 第1章 绪论
- 苏教版科学六年级下册全册练习附答案
- 15D501 建筑物防雷设施安装
- FZ/T 10025-2022本色布技术要求规范
- 刑法学(上册)马工程课件 第1章 刑法概说
- GA/T 527.1-2015道路交通信号控制方式第1部分:通用技术条件
- GA/T 1402-2017机动车外廓尺寸自动测量装置
- 概率与统计(英文)chapter 2 probability
- 弘扬五四精神-演讲比赛课件
- 六年级下册道德与法治教案(表格版本)
评论
0/150
提交评论