问答题本程序的功能是获取文本框中的文本。窗口中有两个文本框“用户名”和“密码”,以及三个按钮“登录”、“其他用户登录,,和“关闭”,初始状态“用户名”文本框是只读的,单击“其他用户登录”按钮后变成可写的,“密码”文本框使用的不是密码文本框,在用户键入的时候设置显示为*号。输入用户名和密码后,单击“登录”按钮后,如果输入的密码为空,则弹出提示消息框,否则后台将显示输入的用户名和密码。比如显示为“admin用户的密码:password”(admi为输入的用户名,password为输入密码)。
import java.awt.*;
import java.awt.event.*;
import javax.swing.JOptionPane;
public class java3
{
public static void main(String args[])
{
final Frame frmFrame=new Frame();
Panel pnlPanel=new Panel();
Label lblUsername=new Label("用户名");
Label lblPassword=new Label("密码");
final TextField txtUsername=new TextField("
Student");
final TextField txtPassword=new TextFidd("",
8);
txtUsername.setEditable(false);
txtPassword.setChar(’*’);
Button btnButtonl=new Button("登录");
ButtOn btnButton2=new Button("其他用户登
录");
Button btnButton3=new Button("关闭");
btnButtonl.addActionListener(new ActionListen-er()
{
public void actionPerformed(ActionEvent e)
{
if((txtPassword.getText()).length()= =0)
{
JOptionPane.showMessageDialog(frmFrame,"密码不能为空");
return;
}
txtPassword.setColumns(16);
System.out.println(txtUsername.getText()+"
用户的密码:"
+txtPassword.getPassword());
}
});
btnButton2.addActionListener(new ActionListen-er()
{
public void actionPerformed(ActionEvent e)
{
txtUsername.setEnable(true);
}
});
btnButton3.addActionListener(new ActionListen-er()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
});
pnlPanel.add(1blUsername);
pnlPanel.add(txtUsername);
pnlPanel.add(1blPassword);
pnlPanel.add(txtPassword);
pnlPanel.add(btnButtonl);
pnlPanel.add(btnButton2);
pnlPanel.add(btnButton3);
frmFrame.add(pnlPanel);
frmFrame.setTitle("advance");
frmFrame.pack();
frmFrame.show();
}
}
问答题下面是一个Applet程序,其功能是将完整的图像显示于Applet的区块中,然后可以通过拖动鼠标让图像随着鼠标拖动的轨迹而移动。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
注意:不改动程序的结构,不得增行或删行。
源程序文件代码清单如下:
import java.applet.*;
import java.awt.*;
/*
<applet code="ex7_3.class" width=800 height=400>
</applet>
*/
public class ex7_3 extends Applet
{
private Image iImg;
private int xPos,yPos;
public void init(}
{
xPos=yPos=0;
{{U}}iImg=getImage("ex7_3.jpg"){{/U}};
}
public void paint(Graphics g)
{
{{U}}g.drawImage(iImg,xPos,yPos){{/U}};
}
public boolean mouseDrag(Event e,int x,int y)
{
xPos=x;
yPos=y;
{{U}}paint(){{/U}};
return true;
}
}
{{B}}ex7_3.html{{/B}}
<HTML>
<HEAD>
<TITLE>ex7_3</TITLE>
</HEAD>
<BODY>
<applet code="ex7_3.class" width=800 height=400>
</applet>
</BODY>
</HTML>
问答题请完成下列Java程序:读取新浪首页文件的数据并且显示出来。要求编写JFrame扩展类,以String类的对象定义的url地址作为入口参数,该类实现根据url参数指定的地址进行连接和读取数据,并且能显示在1个文本区域内。注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。程序运行结果如下:importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;importjava.net.*;importjava.io.*;publicclassex25_2{publicstaticvoidmain(String[]arg){UrlFramepage=newUrlFrame("http://www.sina.com.cn");page.show();}}classUrlFrameextendsJFrame{JTextAreajta=newJmextArea("正在读取文件…");URLurl;publicUrlFrame(StringstrAddr){super(strAddr);//使用父类的构造方法。setSize(450,300);JScrollPanejsp=newJScrollPane(jta);getContentPane().add(jsp);WindowListenerwl=newWindowAdapter(){publicvoidwindowClosing(WindowEventwe){System.exit(0);}};addWindowListener(wl);try{url=newURL(strAddr);____________________;}catch(MalformedURLExceptionmurle){System.out.println("不合适的URL:"+strAddr);}}voidgetData(URLurl){URLConnectioncon=null;InputStreamReaderisr;BufferedReaderreadBuf;StringstrLine;StringBufferstrBuf=newStringBuffer();try{con=this.url.openConnection();con.connect();jta.setText("打开连接...");isr=newInputStreamReader(con.getInputStream());readBuf=newBufferedReader(isr);jta.setText("读取数据...");while((strLine=readBuf.readLine())!=null)strBuf.append(strLine+"/n");_____________________________;}catch(IOExceptione){System.out.println("IO错误:"+e.getMessage());}}}
问答题本题的功能是,用户利用单选按钮选择性别,在下面的标签中显示用户的选择结果。 import java.awt.*; ______; public class java2 public static void main(String args[]) Frame f=new Frame("java2"); f.setLayout(new GridLayout(3,1)); f.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.exit(0); ); CheckboxGroup cg=new CheckboxGroup(); Checkbox male=new Checkbox("男",cg,false); Checkbox female=new Checkbox("女",cg,false); final Label la=new Label("请选择你的性别"); male.addItemListener(new ItemListener() public void itemStateChanged(ItemEvent e) la.setText("你是个男生?"); ); female.addItemListener(new ItemListener() public void itemStateChanged(ItemEvent e) la.setText("你是个女生?"); ); f.add(male); f.add(female); f.add(la); f.setSize(200,200); ______;
问答题下面是一个Applet程序,其功能是在图形用户界面中实现打印任意行数的杨辉三角形,编写一个含有整型形式参数的方法,此方法打印杨辉三角形,打印的行数由形式参数指定。编写Applet程序接受用户输入的整数,作为实际参数传递并调用上面的方法,要求图形用户界面上包含一个文本区作为输入参数的入口,一个带有纵向滚动条的文本面板作为输出打印结果的区域,一个按钮,点击则完成打印。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。程序运行结果如下:importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;/*<appletcode="exll_3.class"width=800height=400></applet>*/publicclassexll_3extendsJAppletprivateJButtonjb=newJButton("OK");privateJTextPanejtp=newJTextPane();privateJTextFielditl=newJTextField(8);privateintn=15;publicvoidinit(){jb.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){{{U}}n=jtf.getText();{{/U}}jtp.setText("");for(inti=n-1;i>=0;i--){Strings="";for(intj=0;j<i;j++)s+="";for{{U}}(intj=0;j<n;j++){{/U}}s+="*";jtp.setText({{U}}s+"/n"{{/U}});}}});Containercp=getContentPane();cp.add(BorderLayout.NORTH,jtf);cp.add(BorderLayout.CENTER,newJScrollPane(jtp));cp.add(BorderLayout.SOUTH,jb);}publicstaticvoidmain(String[]args){ex11_3obj11_3=newex11_3();Stringstr=obj11_3.getClass().toString();if(str.indexOf("class")!=-1)str=str.substring(6);JFramefrm=newJFrame(str);frm.addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEventwe){System.exit(0);}});frm.getContentPane().add(obj11_3);frm.setsize(300,500);frm.setVisible(true);}}{{B}}ex11_3.html{{/B}}<HTML><HEAD><TITLE>ex11_3</TITLE></HEAD><BODY><appletcode="ex11_3.class"width=800height=400></applet></BODY></HTML>
问答题注意:下面出现的“考生文件夹”均为%USER%。
在考生文件夹下存有文件名为Java_2.java的文件,本题功能是完成点定义,并输出点坐标。请完善Java_2.java文件,并进行调试,使程序结果如下:
x=5 y=5
点的坐标是(5,5)
x=8 y=9
点的坐标是(8,9)
由于Java_2.java文件不完整,请在注释行“//*********Found********”下一行语句的下画线地方填入正确内容,然后删除下画线,请勿删除注释行或其他已有语句内容。存盘时,文件必须存放在考生文件夹下,不得改变原有文件的文件名。
给定源程序:
public class Java_2 {
public int x,y;
public Java_2() {
}
public Java_2 (int x,int y){
this.x=x; this.y=y;
}
//*********Found********
public Java_2(______p){
x=p.x;y=p.y;
}
public Java_2 getLocation(){
Java_2 p=new Java_2 (x,y);
return p;
}
public int getX(){
return X;
}
public int getY(){
return y;
}
public void move (int x,int y){
this.x=x;
this.y=y;
}
public void setLocation (Java_2 p){
x=p.x;
y=p.y;
}
public String toString(){
return("("+Integer.toString (x)+","+Integer.toString(y)+")");
}
public void translate (int x,int y){
this.x+=x;
this.y+=y;
}
public static void main (String args[]){
//*********Found********
Java_2 p=new______(5,5)j
System.out .printIn("x="+p.x+" y="+p.y);
//*********Found********
System.out.printIn("点的坐标是"+______());
p.translate (3,4);
System.out.printIn("x= "+p.x+" y="+p.y);
//*********Found********
System.out.printIn("点的坐标是"+______());
}
}
问答题本题程序中实现了一个“生产者一消费者问题”。生产者产生一个随机数存入DataPool类中,消费者从中取出数据。DataPool类一次只能存放一个数据。请更正题中带下划线的部分。 注意:不改变程序的结构,不得增行或删行。 class DataPool private int data; private boolean isFull; public DataPool() isFull=false; public synchronized void putData(int d) if(isFull= =true) try this.notify(); catch(InterruptedException e) data=d; isFull=true; System.out.println("生产了一个数据:"+data); this.notify(); public synchronized int getData() if(isFull= =false) try this.wait(); catch(InterruptedException e) isFull=false; System.out.println("消费了一个数据"+data); this.wait(); return this.data; boolean getIsFull() return isFull; class Producer extends Thread DataPool pool; public Producer(DataPool pool) this.pool=pool; public void run() for(int i=0; i<10; i++) int data=(int) (Math.random()*1000); try //用于生产数据 sleep(data); catch(InterruptedException e) pool.putData(data); class Consumer implements Runnable DataPool pool; public Consumer(DataPool pool) this.pool=pool; public void run() for(int i=0; i<10; i++) int data=pool.getData(); try //用于处理数据 sleep((int) (Math.random()*1000)); catch(InterruptedException e) public class advance public static void main(String[] args) Data Pool pool=new Data Pool(); Producer pro=new Producer(pool); Runnable con=new Consumer(pool); Thread conTh=new Thread(con); pro.start(); conTh.start();
问答题本题程序功能是分别比较两个字符串"A"和"a"是否相等及两个字符'A'和'a'是否相等,并输出比较结果。请将下述程序补充完整(注意:不得改动程序的结构,不得增行或删行)。 public class basic public static void main (String[] args) ______; c1= 'A';c2 = 'a'; String str1= new String("A"),str2 = new String("a"); if(______) System.out.println(c1+" equals "+c2); else System.out.println(c1+" doesn't equal "+c2); if(______) System.out.println(str1+" equals "+str2); else System.out.println(str1+" doesn't equal "+str2);
问答题下面是一个Applet程序,其功能是在窗口中绘制3个半径递增的圆,并用RGB三原色对这3个圆填充。要求建立一个绘制圆的类,实现根据指定颜色进行填充的功能,在主程序中通过调用这个类的方法实现圆的绘制。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。程序运行结果如下:importjava.applet.*;importjava.awt.*;importjava.awt.*;/*<appletcode="ex22_3.class"width=800height=400></applet>*/classCanvasCircleextendsCanvas{privateColorcCircle;publicCanvasCircle(Colorc){cCircle=c;}publicvoidpaint(Graphicsg){intdimCricle,xCircle,yCircle;DimensionsizeCurrent=getSize();if({{U}}sizeCurrent.width>sizeCurrent.height{{/U}}){dimCricle=sizeCurrent.width;}else{dimCricle=sizeCurrent.height;}g.setColor(cCircle);{{U}}xCircle=(sizeCurrent.height-dimCricle)/2;{{/U}}{{U}}yCircle=(sizeCurrent.width-dimCricle)/2;{{/U}}g.fillOval(xCircle,yCircle,dimCricle,dimCricle);}}publicclassex22_3extendsApplet{publicvoidinit(){GridBagLayoutgbl=newGridBagLayout();GridBagConstraintsgbc=newGridBagConstraints();CanvasCirclecircleNew;setLayout(gbl);gbc.weightx=1.0;gbc.weighty=1.0;gbc.fill=GridBagConstraints.BOTH;circleNew=newCanvasCircle(Color.red);gbl.setConstraints(circleNew,gbc);add(circleNew);gbc.weightx=1.5;gbc.weighty=1.5;circleNew=newCanvasCircle(Color.green);gbl.setConstraints(circleNew,gbc);add(circleNew);gbc.weightx=2.0;gbc.weighty=2.0;circleNew=newCanvasCircle(Color.blue);gbl.setConstraints(circleNew,gbc);add(circleNew);}}{{B}}ex22_3.html{{/B}}<HTML><HEAD><TITLE>ex22_3</TITLE></HEAD><BODY><appletcode="ex22_3.class"width=800height=400></applet></BODY></HTML>
问答题综合应用题下面是一个Applet程序,其功能是实现一个计数器,每隔0.15秒计数器数值加1,数值动态变化,并且能够控制计数器的暂停和继续。要求通过使用swing的构件建立图形用户界面,主要包括一个文本区域,用于显示计数器结果;两个按钮,一个使计数器暂停,一个使计数器继续工作。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。程序运行结果如下:importjavax.swing.*;importjava.awt.*;importjava.awt.event.*;/**/publicclassex7_3extendsJApplet{privateJTextFieldjtf=newJTextField(15);privateJButtonHold=newJButton("Hold"),resume=newJButton("Resume");privateex7_3thobj7_3th=newex7_3th();classex7_3thextendsThread{privateintcnt=0;privatebooleanbIsHold=false;publicex7_3th(){start();}publicvoidhold(){bIsHold=true;}publicsynchronizedvoidfauxResume(){bIsHold=false;wait();}publicvoidrun(){while(true){try{sleep(150);synchronized(this){while(bIsHold)notify();}}catch(InterruptedExceptionie){System.err.println("Interrupted");}jtf.setText(cnt);}}}publicvoidinit(){Containercp=getContentPane();cp.setLayout(newFlowLayout());cp.add(jtf);Hold.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEventae){obj7_3th.hold();}});cp.add(Hold);resume.addActionListener(newActionListener(){publicvoidactionPerformed(ActionEvente){obj7_3th.fauxResume();}});cp.add(resume);}publicstaticvoidmain(String[]args){ex7_3obj7_3=newex7_3();Stringstr=obj7_3.getClass().toString();if(str.indexOf("class")!=-1)str=str.substring(6);JFramefrm=newJFrame(str);frm.addWindowListener(newWindowAdapter(){publicvoidwindowClosing(WindowEventwe){System.exit(0);}});frm.getContentPane().add(obj7_3);frm.setSize(300,200);obj7_3.init();obj7_3.start();frm.setVisible(true);}}ex7_3.htmlex7_3
问答题下面的程序中,有两个文本框,Input和Output,用户在Input文本框中输入字符串后回车,字符串会在Output文本框中出现。
问答题1.setText("请正确输入! ");
问答题本题中定义了长度为20的一维整型数组a,并将数组元素的下标值赋给数组元素,最后打印输出数组中下标为奇数的元素。
public class java1(
public static void main(String[]args){
int a[]=______;
int i;
for(______;i++)
a[i]=i;
for(i=0;i<20;i++){
if(______)
System.out.print("a["+i+"]="+a[i]+",");
}
}
问答题下面的Applet程序,其功能为画一个正方形,大小140*140,其背景色为蓝色(其填充色为pink色,各边离Applet的边为10像素)和一个在填充的正方形中自右上到左下来回移动的小球(半径15)。请改正程序中的错误(有下划线的语句),使程序执行后,能得到预期的结果。注意:不改动程序的结构,不得增行或删行。程序的执行结果为:importjava.awt.*;importjava.applet.*;/*<appletcode=BallAnimwidth=800height=600></applet>*///画一个正方形和一个移动的球,实现了Runnable接口。publicclassBallAnimextendsAppletimplementsRunnableThreadanimThread;intballX=100;//球的x坐标intbally;10;//球的Y坐标intballDirection=0;//球移动的方向标志:0表示从上向下移动,1表示从下向上移动publicvoidinit()super.setBackground(Color.blue);publicvoidstart()if(animThread!=null)animThread=newThread(this);animThread.start();publicvoidstop()animThread.stop();animThread=null;//实现Runnable接publicvoidrun()Thread.currentThread().setPriority(Thread.NORM_PRIORITY);//设置线呈优先级NORM_PRIORITYwhile(true)moveBall();tryThread.sleep(100);//休眠0.1秒catch(ExceptionsleepProblem)//Thisappletignoresanyexceptionsifithasaproblemsleeping.//MaybeitshouldtakeSominexprivatevoidmoveBall()//球对角运动if(ballDirection==0)ballX-=2;//如果球从左向右运动,球的X坐标减少2ballY+=2;//如果球从上向下运动,球的Y坐标增加2if(ballY>100)//球的Y坐标增加到100,改变球的运动方向ballDirection=1;ballX=10;ballY=100;elseballX+=2;//如果球从右向左运动,球的X坐标增加2ballY-=2;//如果球从下向上运动,球的Y坐标减少2if(bally<=10)//球的X坐标减少到10,改变球的运动方向ballDirection=0;ballX=100;ballY=10;paint();publicvoidpaint(Graphicsg)g.setColor(Color.pink);g.fillRect(10,10,120,120);g.setColor(Color.green);g.fillOval(ballX,ballY,30,30);ex40_3.html:<html><head><title>ex40_3</title></head><body><appletcode="BallAnim.class"width=800height=400></applet></body></html>
问答题下面是一个Applet程序,其功能是建立2个文本区域,一个为编辑区,一个为只读区;建立2个按钮,一个实现将编辑区中被鼠标选定的文本内容拷贝到只读区中,一个实现将只读区的全部文本内容清空。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。程序运行结果如下:importjava.awt.*;importjava.applet.*;/*<appletcode="ex6_3.class"width=800height=400></applet>*/publicclassex6_3extendsAppletprivateButtonokBtn,clearBtn;privateStringstrMessage;privateTextAreatAreal,tArea2;publicvoidinit()strMessage="Hello!Welcometothetest!/n"+"ThisistheNCRExamination!/n"+"Wishyougoodluck!";tAreal=newTextArea(10,25);tAreal.setText(strMessage);tArea2=newTextArea(10,25);tArea2.setEditable(true);okBtn=newButton("Copy");clearBtn=newButton("Clear");add(tArea1);add(tArea2);add(okBtn);add(clearBtn);publicbooleanaction(Evente,Objecto)if(e.target==okBtn)tAreal.setText(tArea2.getSelectedText());elseif(e.target==clearBtn)tAreal.setText("");returntrue;ex6_3.html<HTML><HEAD><TITLE>ex6_3</TITLE></HEAD><BODY><appletcode="ex6_3.class"width=800height=400></applet></BODY></HTML>
问答题下面是一个Applet程序,其功能是建立2个文本区域,一个为编辑区,一个为只读区;建立2个按钮,一个实现将编辑区中被鼠标选定的文本内容拷贝到只读区中,一个实现将只读区的全部文本内容清空。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。程序运行结果如下:importjava.awt.*;importjava.applet.*;/*<appletcode="ex6_3.class"width=800height=400></applet>*/publicclassex6_3extendsApplet{privateButtonokBtn,clearBtn;privateStringstrMessage;privateTextAreatAreal,tArea2;publicvoidinit(){strMessage="Hello!Welcometothetest!/n"+"ThisistheNCRExamination!/n"+"Wishyougoodluck!";tAreal=newTextArea(10,25);tAreal.setText(strMessage);tArea2=newTextArea(10,25);{{U}}tArea2.setEditable(true){{/U}};okBtn=newButton("Copy");clearBtn=newButton("Clear");add(tArea1);add(tArea2);add(okBtn);add(clearBtn);}publicbooleanaction(Evente,Objecto){if(e.target==okBtn){{U}}tAreal.setText(tArea2.getSelectedText()){{/U}};elseif(e.target==clearBtn){{U}}tAreal.setText(""){{/U}};returntrue;}}{{B}}ex6_3.html{{/B}}<HTML><HEAD><TITLE>ex6_3</TITLE></HEAD><BODY><appletcode="ex6_3.class"width=800height=400></applet></BODY></HTML>
问答题本程序的功能是读取用户输入的整数a、b,单击“比较”按钮时对两个数进行比较,并输出比较结果,如图所示。importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;publicclassexam_3{publicstaticvoidmain(String[]args){IFrameframe=newIFrame();frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.show();}}classIFrameextendsJFrame{publicstaticfinalintDEFAULT_WIDTH=250;publicstaticfinalintDEFAULT_HEIGHT=250;publicIFrame(){setTitle("Welcome");setSize(DEFAULT_WIDTH,DEFAULT_HEIGHT);IPanelpanel=newIPanel();______contentPane=getContentPane();contentPane.add(panel);}}classIPanelextendsJPanel{publicIPanel(){setLayout(newFlowLayout(FlowLayout.LEFT));JLabellal=newJLabel("输入整数a:");JLabella2=newJLabel("输入整数b:");finalJTextFieldnum1=newJTextField(10);finalJTextFieldnum2=newJTextField(10);JButtonbut=newJButton("比较");finalJLabelres=newJLabel("结果:");add(la1);add(num1);add(la2);add(num2);add(but);add(res);but.addActionListener(______{publicvoidactionPerformed(ActionEventevent){Strings1=num1.getText();Strings2=num2.getText();inta=Integer.parseInt(s1);intb=Integer.parseInt(s2);Stringstr=newString();if(a>b)str="a>b";elseif(a==b)str="a=b";elsestr="a<b";res.setText("结果:"+str);}});}}
问答题下列程序中,要求按照从大到小的顺序输出0-100之间(包括0和100)的能被3整除的所有偶数,并输出符合上述要求的数的个数,请将程序补充完整。程序运行结果如下:
96,90,84,78,72,66,60,54,48,42,36,30,24,18,12,6,0,
17
public class ex3_1{
private int cnt=0;
public static void main(String[] args) {
ex3_1 obj 3_1=new ex3_1 ( );
obj 3_1.method3_1 ( );
}
public void method3_1 () {
for (_______________) {
if(_______________){
System.out .print (i+", ");
_______________;
}
}
System. out.println ( );
System. out .println (cnt);
}
}
问答题请完成程序,首先由一个类simple实现Serializable接口,并有三个成员变量,分别为int型、double型和String型,可以用toString的方法显示这三个成员变量。在main方法中创建这个simple的持久对象,根据用户在命令行输入的三个参数来设定其中成员变量的值。然后,将这个对象写入名为TheSerial.data的文件中,并显示成员变量。最后从文件TheSerial.data中读出三个成员变量并显示出来。
注意:请勿修改main()主方法和其他已有语句内容,仅在横线处填入适当语句。
import java.io.*;
class TheSerial implements Serializable
{
private int intvalue;
private double doublevalue;
private String string;
The Serial ()
{
intvalue=123;
doublevalue=12.34;
string="Serialize Test";
}
public void setDouble(double d)
{
doublevalue=d;
}
public void setInt(int i)
{
intvalue=i;
}
public void setString(String s)
{
string=s;
}
public String to String()
{
return("int="+intvalue+" double="+doublevalue+" string="+string);
}
}
public class simple
{
public static void main(String[] args)
{
The Serial e1=new TheSerial();
TheSerial e2;
try
{
e1.setInt(Integer.parseInt(args[0]));
e1.setDouble(Double.parseDouble(args[1]));
e1.setString(args[2]);
}
catch(Exception e)
{
e1.setString(e.getMessage());
}
System.out.println(e1);
try
{
FileOutputStream oS=new FileOutputStream("TheSerial.data");
ObjectOutputStream oOS=new ObjectOutputStream(oS);
______;
}
catch(IOException ioException)
{
System.out.println (ioException.getMessage ());
}
try
{
FileInputStream iS=new FileInputStream("TheSerial.data");
ObjectInputStream oIS=new ObjectInputStream(iS);
______;
System.out.println(e2);
}
catch(IOException ioException)
{
System.out.println(ioException.getMessage());
}
catch(ClassNotFoundException cnfException)
{
System.out.println(cnfException.getMessage());
}
}
}
问答题下列程序用来显示用户要求打开的图片。在名为“读取图像”的JFrame框架中有一个单行文本框,用户可以在其中输入图片文件的文件名称,按下“浏览图片”按钮以后,新生成一个对话框,将图片显示在这个对话框中,运行结果如下图所示。请填写横线处的内容。注意:请勿改动main()主方法和其他已有语句内容,仅在横线处填入适当语句。importjava.awt.*;importjava.awt.event.*;importjava.io.*;importjavax.swing.*;publicclassExample2_9publicstaticvoidmain(String[]args)JFrameframe=newFileNameFrame("读取图像");frame.setDefaultCloseOperation(JFrame.EXITONCLOSE);frame.setSize(300,100);frame.show();classFileNameFrameextendsJFramimplementsActionListenerJLabelinputLabel;JTextFieldfileNameText;JButtoncontaintButton;publicFileNameFrame(StringtitleText)super(titleText);inputLabel=newJnabel("请输入图像文件的名称");fileNameText=newJTextField(10);containtButton=newJButton("浏览图片");fileNameText.addActionListener(this);containtButton.addActionListener(this);JPanelpanel=newJPanel();panel.add(fileNameText);panel.add(containtButton);Containercontaint=getContentPane();containt.setLayout(newBorderLayout(3,3));containt.add(inputLabel,BorderLayout.NORTH);containt.add(panel,BorderLayout.CENTER);publicvoidactionPerformed(ActionEvente)StringfileName=fileNameText.getText();ImageIconimage=______;ImageDialogdlg=newImageDialog(this);dlg.setImage(image);dlg.setTitle(fileName);dlg.show();classImageDialogextendsJDialogJLabelimageLabel;publicImageDialog(JFrameframe)super(frame);imageLabel=newJLabel();getContentPane().add(imageLabel);this.addWindowListener(newWindowAdapter()publicvoidwindowClosing(WindowEvente)hide(););this.setSize(200,200);publicvoidsetImage(ImageIconicon)imageLabel.______(icon);
