java考试复习资料 黄河科技学院考试复习资料

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.制作一个JFrame的应用程序,设置背景色为蓝色(blue),布局管理为流式布局,该JFrame 包含一个JButton,名为“关闭”,点击后关闭该JFrame,退出程序。(10分)

解; import java.awt.*;

import javax.swing.*;

public class Flow

{ public static void main(String[] args)

{ FlowLayout flow = new FlowLayout();

JFrame f = new JFrame("Test");

f.getContentPane().setLayout(flow);

JButton button = new JButton(“关闭”)

button.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

System.exit(0); } } );

f.getContentPane().add(button);

f.setSize(100,200);

f.setBackground(Color.blue);

f.setVisible(true); }}

2.有下面一段Server段程序,目的是能够同时服务多个客户,客户的请求是一句话(一个String)。如果这个请求的内容是字符串"plain"的话,服务器仅将"hello"字符串返回给用户。否则将用户的话追加到当前目录的文本文件Memo.txt中(路径为"Memo.txt"),并向用户返回"OK"。注意Server并发的处理多用户,Memo.txt被共享,要求不能出现数据不一致。Server的程序如下文件Server.java:。。。。。。请根据题目的要求和现有的Server.java, UserThread.java的程序,完成类MemoController.java的程序。(10分)

解:import java.io.*;

public class MemoController{

FileOutputStream fos;

OutputStreamWriter osw;

BufferedWriter bw;

public MemoController(){

try{

fos=new FileOutputStream("memo.txt",true);

osw=new OutputStreamWriter(fos);

bw=new BufferedWriter(osw);

}catch(FileNotFoundException e){}; }

public synchronized void append(String s){

try{ bw.write(s,0,s.length());

bw.flush();

bw.close();

osw.close();

fos.close();

}catch(IOException e){ } }

public static void main(String args[]){

MemoController mmc=new MemoController();

mmc.append("I am xubin ");} }

3.下面的程序A.java是一个应用程序(其源文件中还定义了另一个类B),其实现各自功能的代码没有给出,若程序的功能是在命令行把当前文件夹下的所有后缀名为.java文件显示在命令行界面,每行显示一个文件名,请完成程序后面的1、2小题,将程序补充完整。(8分)1):import java.io 2):public class A { 3): public static void main( String args[ ] ){

…//将当前目录下所有以.java结尾的文件显示在命令行,每行显示一个文件名。

9): } 10): 11): 12): class B implements FilenameFilter {

13): public boolean accept(File dir, String s) {

…//过滤文件名以.java结尾的文件。18): } 19): } (1).类B实现了文件名过滤器接口FilenameFilter,请为接口中的accept方法编写方法体,实现以下功能:若代表文件名的第2个参数s是以字符串.java结尾,则返回true,否则返回false。

if(s.endsWith(".java"))

return true;

else

return false;

(2). 类A中的main方法的功能是:将当前目录下所有以.java结尾的文件显示在命令行,每行显示一个文件名。请写出main方法中的所有代码。

File file = new File(".");

String[] str1 = file.list(new B());

for(int i=0;i

{ System.out.println(str1[i]); }

4.编写一个完整的Java Application 程序。包含类Student、TestStudent,具体要求如下:(10分)

⑴Student类:①属性name : String对象,表示一个人姓名sex:char类型,用来表示性别id:long类型,表示学号classinfo:String对象,表示班级address :String 对象,表示家庭地址

②方法Student (String name, char sex, long id):构造函数String getName() :返回姓名void setId(long id) :设置学号void setAddress(String add) :设置家庭地址void setClass(String classinfo) :设置班级信息public String toString() :返回学生的各项信息,包括姓名、性别等上述属性

(2)类TestStudent作为主类要完成测试功能:①用以下信息生成一个Student对象aGirl

姓名:杨阳性别:女学号:1234567 ②设置家庭地址: 浙江杭州教工路42号设置班级信息:2004计算机1班③输出对象aGirl的各项

class Student

{ // 表示学生的类

protected String name;

protected char sex;

protected long id;

protected String classinfo;

protected String address;

Student(String name, char sex, long id)

{ = name;

this.sex = sex;

this.id = id;}

void setId(long id )

{ this.id=id; }

void setAddress(String addr)

{ this.address = addr; }

void setClass(String classinfo)

{ this.classinfo =classinfo; }

public String toString()

{ String s = new String( "\n姓名:" + name+ "\n性别:" + sex);

s += "\n学号:" + id;

if (classinfo != null)

s += "\n班级:" + classinfo;

if (address != null)

s += "\n家庭地址:" +address;

return s; }}

public class TestStudent

{ public static void main(String args[])

{ Student aGirl = new Student("杨阳", '女',1234567);

aGirl.setClass("2004计算机1班");

aGirl.setAddress("浙江杭州教工路42号");

System.out.println("aGirl: " + aGirl); // 这样会输出一个对象的所有属性的现有值} }

相关文档
最新文档