操作题14套

基本操作

在考生文件夹中存有文件名为Java_1.java的文件,该程序是不完整的,请在注释行“//Found”下一行语句的下划线地方填入正确内容,然后删除下划线,请勿删除注释行或改动其他已有语句内容。存盘时文件必须存放在考生文件夹下,不得改变原有文件的文件名。
本题的要求是:
该程序的功能是:打印如下图形。
*
***
*****
*******
*********

public class Java_1 {
public static void main(String[] args) {
//Found*
for (int i=1;;i++){
for(int k=1;k<=5-i;k++)
//Found*
______________________;
//Found*
for(
;j<=2i-1;j++)
System.out.print("
");
//Found*
______________________;
}
}
}

本题考查的是for循环语句。
因为打印输出的图形是5行,所以第一空填"i<=5"。图形是空格和*组成,所以第二空填"System.out.print(" “)”。内层循环j从1开始,所以第三空填"int j=1"。每行输出后需要换行,所以第四空填"System.out.println()"。
具体程序如下:

public class Java_1 {
    public static void main(String[] args) {
        //*********Found**********
        for (int i=1;i<=5;i++){
            for(int k=1;k<=5-i;k++)
                //*********Found**********
                System.out.print(" ");
            //*********Found**********
            for(int j=1;j<=2*i-1;j++)
                System.out.print("*");
            //*********Found**********
            System.out.println();
        }
    }

简单应用

在考生文件夹中存有文件名为Java_2.java的文件,该程序是不完整的,请在注释行“//Found”下一行语句的下划线地方填入正确内容,然后删除下划线,请勿删除注释行或改动其他已有语句内容。存盘时文件必须存放在考生文件夹下,不得改变原有文件的文件名。
本题的要求是:
该程序的功能是:将一个对象写入一个数据文件,再读出该对象并显示出来。
该程序的运行结果是:小王

import java.io.*;

public class Java_2 {
public static void main(String[] args) {
ObjectOutputStream oos = null;
ObjectInputStream ois = null;
try {
File f = new File(“Person.dat”);
//Found*
oos = new ObjectOutputStream(new ________(f));
oos.writeObject(new Person(“小王”));
oos.close();
ois = new ObjectInputStream(new FileInputStream(f));
//Found*
Person d = (Person) ois.
();
System.out.println(d);
ois.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
//Found*
class Person implements __________________ {
String name = null;
public Person(String s) {
name = s;
}
//Found*
public String _____________() {
return name;
}
}

本题考查的是对文件读、写对象数据。
需要使用到与对象有关的流ObjectInputStream/ObjectOutputStream。
ObjectOutputStream:对象输出流,使用writeObject(Object obj)方法将一个对象Obj写入输出流;ObjectInputStream:对象输入流,使用readObject()方法读取一个对象所以第一空填"FileOutputStream",第二空填"readObject"。
当一个类实现了Serializable接口(该接口仅为标记接口,不包含任何方法定义),表示该类可以序列化,序列化的目的是将一个实现了Serializable接口的对象转换成一个字节序列,所以第三空填"Serializable"。
默认执行Object的toString方法,在该类重写该方法,达到输出姓名效果,所以第四空填"toString"。
具体程序如下:

import java.io.*;
 
public class Java_2 {
    public static void main(String[] args) {
        ObjectOutputStream oos = null;
        ObjectInputStream ois = null;
        try { 
            File f = new File("Person.dat");
            //*********Found**********
            oos = new ObjectOutputStream(new FileOutputStream(f));
            oos.writeObject(new Person("小王"));
            oos.close();
            ois = new ObjectInputStream(new FileInputStream(f));
            //*********Found**********
            Person d = (Person) ois.readObject();
            System.out.println(d);
            ois.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
//*********Found**********
class Person implements Serializable{
    String name = null;
    public Person(String s) {
        name = s;
    }
    //*********Found**********
    public String toString() {
        return name;
    }
}

综合应用

在考生文件夹中存有文件名为Java_3.java的文件,该程序是不完整的,请在注释行"//Found"下一行语句的下划线地方填入正确内容,然后删除下划线,请勿删除注释行或改动其他已有语句内容。存盘时文件必须存放在考生文件夹下,不得改变原有文件的文件名。
本题的要求是:
程序运行后出现如图所示界面,点击增大按钮则左边的数字增大,点击减小按钮则左边的数字减小。 

在这里插入图片描述

import java.awt.;
import java.awt.event.
;
import javax.swing.*;

public class Java_3 {
public static void main(String[ ] args) {
JFrame frame = new JFrame(“Demo”);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//Found*
frame.getContentPane().(new Change());
frame.pack();
//Found*
frame.setVisible(
);
}
}

class Change extends JPanel{
int count = 200;
JLabel l1;
JButton b1, b2;
public Change() {
setPreferredSize(new Dimension(280, 60));
l1 = new JLabel(“200”);
b1 = new JButton(“增大”);
b2 = new JButton(“减小”);
add(l1);
add(b1);
add(b2);
b1.addActionListener(new BListener1());
//Found*
b2.addActionListener(new ___________());
}
private class BListener1 implements ActionListener {
public void actionPerformed(ActionEvent e) {
count++;
l1.setText("" + count);
}
}
private class BListener2 implements ActionListener {
public void actionPerformed(ActionEvent e) {
//Found*
count _________;
l1.setText("" + count);
}
}
}

本题考查的是Swing构件和AWT中的事件处理。
getContentPane()的作用是初始化一个容器,用来在容器上添加一些控件,所以第一空填"add"。
然后需要显示该容器,所以第二空填"true"。
由语句"b1.addActionListener(new BListener1());“可知,第三空填"BListener2”。
定义的b2事件是个减小,所以第四空填"–"。
具体程序如下:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Java_3 {
    public static void main(String[ ] args) {
        JFrame frame = new JFrame("Demo");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

        //*********Found**********
        frame.getContentPane().add(new Change());

        frame.pack();
        //*********Found**********
        frame.setVisible(true);
    }
}

class Change extends JPanel{

    int count = 200;
    JLabel l1;
    JButton b1, b2;

    public Change() {
        setPreferredSize(new Dimension(280, 60));
        l1 = new JLabel("200");
        b1 = new JButton("增大");
        b2 = new JButton("减小");
        add(l1);
        add(b1);
        add(b2);
        b1.addActionListener(new BListener1());
        //*********Found**********
        b2.addActionListener(new BListener2());
    }

    private class BListener1 implements ActionListener {

        public void actionPerformed(ActionEvent e) {
            count++;
            l1.setText("" + count);
        }
    }
    private class BListener2 implements ActionListener {

        public void actionPerformed(ActionEvent e) {
            //*********Found**********
            count--;
            l1.setText("" + count);
        }
    }
}

 
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值