Java二级操作题第32套
基本操作
在考生文件夹中存有文件名为Java_1.java的文件,该程序是不完整的,请在注释行"//Found"下一行语句的下划线地方填入正确内容,然后删除下划线,请勿删除注释行或改动其他已有语句内容。存盘时文件必须存放在考生文件夹下,不得改变原有文件的文件名。
本题的要求是:
完善程序,使程序运行后输出窗口如下:
import javax.swing.*;
import java.text.DecimalFormat;
public class Java_1{
//*********Found**********
public static ___________________ main( String args[] ){
SimpleTime t = new SimpleTime( 12, 30, 19 );
//*********Found**********
___________________.showMessageDialog( null, t.buildString(),
" \"this\" 引用示范",
JOptionPane.INFORMATION_MESSAGE );
System.exit( 0 );
}
}
class SimpleTime {
private int hour, minute, second;
public SimpleTime( int hour, int minute, int second ){
this.hour = hour;
this.minute = minute;
this.second = second;
}
public String buildString(){
//*********Found**********
return "this.toString(): " + ___________________() +
"\ntoString(): " + toString() +
"\nthis (with implicit toString() call): " +
this;
}
public String toString(){
DecimalFormat twoDigits = new DecimalFormat( "00" );
return twoDigits.format( this.hour ) + ":" +
twoDigits.format( this.minute ) + ":" +
twoDigits.format( this.second );
}
}
本题考查的是JavaSwing。
Main方法是无返回类型,所以第一空填写"void"。 showMessageDialog是创建一个提示框,是JOptionPane下面的静态方法,所以第二空填写"JOptionPane"。
根据题目图片展示,提示内容需要换行并且跟上toString,所以第三空填写"toString"。
具体程序如下:
import javax.swing.*;
import java.text.DecimalFormat;
public class Java_1{
//*********Found**********
public static void main( String args[] ){
SimpleTime t = new SimpleTime( 12, 30, 19 );
//*********Found**********
JOptionPane.showMessageDialog( null, t.buildString(),
" \"this\" 引用示范",
JOptionPane.INFORMATION_MESSAGE );
System.exit( 0 );
}
}
class SimpleTime {
private int hour, minute, second;
public SimpleTime( int hour, int minute, int second ){
this.hour = hour;
this.minute = minute;
this.second = second;
}
public String buildString(){
//*********Found**********
return "this.toString(): " + this.toString() +
"\ntoString(): " + toString() +
"\nthis (with implicit toString() call): " +
this;
}
public String toString(){
DecimalFormat twoDigits = new DecimalFormat( "00" );
return twoDigits.format( this.hour ) + ":" +
twoDigits.format( this.minute ) + ":" +
twoDigits.format( this.second );
}
}
简单应用
在考生文件夹中存有文件名为Java_2.java的文件,该程序是不完整的,请在注释行"//Found"下一行语句的下划线地方填入正确内容,然后删除下划线,请勿删除注释行或改动其他已有语句内容。存盘时文件必须存放在考生文件夹下,不得改变原有文件的文件名。
本题的要求是:
完善程序,使程序显示对话框如下:
并在命令行中每隔10秒显示一下当前时间(如下图),直至用户在对话框按下确认按钮后退出。
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.*;
import javax.swing.Timer;
public class Java_2{
public static void main(String[] args){
//*********Found**********
ActionListener listener = new __________________();
Timer t = new Timer(10000, listener);
t.start();
JOptionPane.showMessageDialog(null, "退出程序吗?");
System.exit(0);
}
}
//*********Found**********
class TimePrinter ___________________ ActionListener{
//*********Found**********
public void actionPerformed(___________________ event){
Date now = new Date();
System.out.println("At the tone, the time is " + now);
Toolkit.getDefaultToolkit().beep();
}
}
本题考查的是JavaSwing。
根据代码上下文可知,TimePrinter是一个事件监听器类,用来输出当前时间,所以第一空填写"TimePrinter"。
ActionListener是接口,所以第二空填写"implements"。
actionPerformed方法的参数是ActionEvent,所以第三空填写"ActionEvent"。
具体程序如下:
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.*;
import javax.swing.Timer;
public class Java_2{
public static void main(String[] args){
//*********Found**********
ActionListener listener = new TimePrinter();
Timer t = new Timer(10000, listener);
t.start();
JOptionPane.showMessageDialog(null, "退出程序吗?");
System.exit(0);
}
}
//*********Found**********
class TimePrinter implements ActionListener{
//*********Found**********
public void actionPerformed(ActionEvent event){
Date now = new Date();
System.out.println("At the tone, the time is " + now);
Toolkit.getDefaultToolkit().beep();
}
}
综合应用
在考生文件夹中存有文件名为Java_3.java的文件,该程序是不完整的,请在注释行"//Found"下一行语句的下划线地方填入正确内容,然后删除下划线,请勿删除注释行或改动其他已有语句内容。存盘时文件必须存放在考生文件夹下,不得改变原有文件的文件名。
本题的要求是:
由用户输入两个浮点数求和,程序先显示输入如下:
输入两个浮点数后,小程序窗口显示结果如:
import java.awt.Graphics;
import javax.swing.*;
//*********Found**********
public class Java_3 extends ____________________ {
double sum; //存和的变量
//*********Found**********
public void __________________(){
String firstNumber, //输入第1个字符串格式的数
secondNumber; //输入第2个字符串格式的数
double number1, //加数
number2; //被加数
//读入第1个输入的数
firstNumber =
JOptionPane.showInputDialog(
"Enter first floating-point value" );
//读入第2个输入的数
secondNumber =
JOptionPane.showInputDialog(
"Enter second floating-point value" );
//将字符串数据转换成双字长类型
number1 = Double.parseDouble( firstNumber );
number2 = Double.parseDouble( secondNumber );
//数据相加
sum = number1 + number2;
}
public void paint( Graphics g ) {
//用g.drawString给结果
g.drawRect( 15, 10, 270, 20 );
g.drawString( "数相加之和为:" + sum, 25, 25 );
}
}
<html>
//*********Found**********
<applet code="_________________.class" width=300 height=50>
</applet>
</html>
本题考查的是Applet。
根据题意得知,最终要输出的是一个窗口,所以Java_3.java第一空填写"JApplet"。
JApplet的初始化方法为init,所以Java_3.java第二空填写"init"。
Html代码里需要引入Applet时,需要写入类名称,所以Java_3.html第一空填写"Java_3"。
具体程序如下:
import java.awt.Graphics;
import javax.swing.*;
//*********Found**********
public class Java_3 extends JApplet {
double sum; //存和的变量
//*********Found**********
public void init(){
String firstNumber, //输入第1个字符串格式的数
secondNumber; //输入第2个字符串格式的数
double number1, //加数
number2; //被加数
//读入第1个输入的数
firstNumber =
JOptionPane.showInputDialog(
"Enter first floating-point value" );
//读入第2个输入的数
secondNumber =
JOptionPane.showInputDialog(
"Enter second floating-point value" );
//将字符串数据转换成双字长类型
number1 = Double.parseDouble( firstNumber );
number2 = Double.parseDouble( secondNumber );
//数据相加
sum = number1 + number2;
}
public void paint( Graphics g ) {
//用g.drawString给结果
g.drawRect( 15, 10, 270, 20 );
g.drawString( "数相加之和为:" + sum, 25, 25 );
}
}
<html>
//*********Found**********
<applet code="Java_3.class" width=300 height=50>
</applet>
</html>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!