天天看點

Java二級操作題第29套

基本操作

Java_1.java是不完整的,請在注釋行"//Found"下一行語句的下劃線地方填入正确内容,然後删除下劃線,請勿删除注釋行或改動其他已有語句内容。存盤時檔案必須存放在考生檔案夾下,不得改變原有檔案的檔案名。

在考生檔案夾中存有檔案名為Java_1.java的檔案。

該程式的功能是:統計100~200之間能被3整除的數的個數并輸出。運作結果為:

Count=33

public class Java_1
{
    public static void main(String args[])
    {
        int i,count;
        
     //*********Found********
        ________________;
        
        for( i=100 ; i <= 200 ; i++)
     //*********Found********
            if ( _________________ ) count++;
        
     //*********Found********
        System.out.println("Count = " + ______________);
    }  
}      

本題考查的是數值相加。

由題意可知變量i為數值循環變量,count為符合條件的數值變量,是以count需要初始化,第一空填寫"count = 0"。

根據題意,滿足能被3整除的數則需要進行統計,是以第二空填寫"i%3==0"。

輸出時,需要輸出統計的數值變量,是以第三空填寫"count"。

具體程式如下:

public class Java_1
{
    public static void main(String args[])
    {
        int i,count;
        
     //*********Found********
        count=0;
        
        for( i=100 ; i <= 200 ; i++)
     //*********Found********
            if ( i%3==0 ) count++;
        
     //*********Found********
        System.out.println("Count = " + count);
    }  
}      

簡單應用

該程式是不完整的,請在注釋行"//Found"下一行語句的下劃線地方填入正确内容,然後删除下劃線,請勿删除注釋行或改動其他已有語句内容。存盤時檔案必須存放在考生檔案夾下,不得改變原有檔案的檔案名。在考生檔案夾中存有檔案名為Java_2.java的檔案。

該程式的功能是:顯示視窗,視窗的标題顯示"二級Java",按鈕顯示"Hello",滑鼠點選"Hello",按鈕顯示變為"你好",滑鼠點選"你好",按鈕顯示變為"Hello",如下圖所示:

Java二級操作題第29套
import javax.swing.*;
import java.awt.event.*;
    
public class Java_2 extends JFrame {
    private JButton b;
    public Java_2(String s){
        setTitle(s);
        b=new JButton("Hello");
        getContentPane().add(b);
     //*********Found********
        b.addActionListener( __________________ );
    setSize(150,150);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     //*********Found********
    setVisible( __________________);    
    }
    class HandleButton implements ActionListener{
        public void actionPerformed(ActionEvent e){
             //*********Found********
            if ( "Hello".equals( __________________) )
                b.setText("你好");
            else
                b.setText("Hello");                          
        }
    }
    public static void main(String args[]){
         //*********Found********
        new __________________;    
    }    
}      

本題考查的是JavaSwing。

根據題意和代碼得知,b對象是一個按鈕,加入的事件監聽則是本類的私有類HandleButton,因為HandleButton類中實作了題目的要求,是以第一空填寫"new

HandleButton()"。

setVisible方法表示是否顯示元件,是以第二空填寫"true"。

Equals方法是字元串的比較方法,這裡則是根據題意比較Hello和按鈕的文本是否一緻,是以第三空填寫"b.getText()"。

題目要求視窗名稱顯示二級Java,是以第四空填寫"Java_2(“二級Java”)"。

具體程式如下:

import javax.swing.*;
import java.awt.event.*;
    
public class Java_2 extends JFrame {
    private JButton b;
    public Java_2(String s){
        setTitle(s);
        b=new JButton("Hello");
        getContentPane().add(b);
     //*********Found********
        b.addActionListener( new HandleButton() );
    setSize(150,150);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     //*********Found********
    setVisible( true);    
    }
    class HandleButton implements ActionListener{
        public void actionPerformed(ActionEvent e){
             //*********Found********
            if ( "Hello".equals( b.getText()) )
                b.setText("你好");
            else
                b.setText("Hello");                          
        }
    }
    public static void main(String args[]){
         //*********Found********
        new Java_2("二級Java");    
    }    
}      

綜合應用

該程式是不完整的,請在注釋行"//Found"下一行語句的下劃線地方填入正确内容,然後删除下劃線,請勿删除注釋行或改動其他已有語句内容。存盤時檔案必須存放在考生檔案夾下,不得改變原有檔案的檔案名。在考生檔案夾中存有檔案名為Java_3.java的檔案。

該程式的功能是:測試以0作除數異常,并在文本域中,顯示出異常資訊。程式運作結果如下圖所示: 

Java二級操作題第29套
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;

public class Java_3
{
   public static void main(String[] args)
   {
      ExceptTestFrame frame = new ExceptTestFrame();
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setVisible(true);
   }
}

class ExceptTestFrame extends JFrame
{
   public ExceptTestFrame()
   {
      setTitle("ExceptTest");
      Container contentPane = getContentPane();
      ExceptTestPanel panel = new ExceptTestPanel();
 //*********Found********
      _____________.add(panel);
      pack();
   }
}

class ExceptTestPanel extends Box
{
   public ExceptTestPanel()
   {
      super(BoxLayout.Y_AXIS);
      group = new ButtonGroup();
      addRadioButton("整數被零除", new
         ActionListener()
         {
     //*********Found********
            public void ___________________(ActionEvent event)
            {
               a[1] = 1 / (a.length - a.length);
            }
         });
      textField = new JTextField(30);
      add(textField);
   }

  //*********Found********
   private void addRadioButton(String s, ___________ listener)
   {
      JRadioButton button = new JRadioButton(s, false)
         {
            protected void fireActionPerformed(ActionEvent event)
            {
               try
               {
                  textField.setText("No exception");
                  super.fireActionPerformed(event);
               }
               catch (Exception exception)
               {
     //*********Found********
                  textField.________(exception.toString());
               }
            }
         };
      button.addActionListener(listener);
      add(button);
      group.add(button);
   }
   private ButtonGroup group;
   private JTextField textField;
   private double[] a = new double[10];
}      

本題考查的是JavaSwing。

任何的元件都可以添加到JFrame的getContentPane()對象中,是以第一空填寫"contentPane"。

Box中,實作了事件監聽,是以第二空填寫"actionPerformed"。

由ExceptTestPanel構造器中的代碼表明,第二個參數是ActionListener對象,是以第三空填寫"ActionListener"。

textField是輸出異常的文本,是以第四空填寫"setText"。

具體程式如下:

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

public class Java_3
{
   public static void main(String[] args)
   {
      ExceptTestFrame frame = new ExceptTestFrame();
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setVisible(true);
   }
}

class ExceptTestFrame extends JFrame
{
   public ExceptTestFrame()
   {
      setTitle("ExceptTest");
      Container contentPane = getContentPane();
      ExceptTestPanel panel = new ExceptTestPanel();
 //*********Found********
      contentPane.add(panel);
      pack();
   }
}

class ExceptTestPanel extends Box
{
   public ExceptTestPanel()
   {
      super(BoxLayout.Y_AXIS);
      group = new ButtonGroup();
      addRadioButton("整數被零除", new
         ActionListener()
         {
     //*********Found********
            public void actionPerformed(ActionEvent event)
            {
               a[1] = 1 / (a.length - a.length);
            }
         });
      textField = new JTextField(30);
      add(textField);
   }

  //*********Found********
   private void addRadioButton(String s, ActionListener listener)
   {
      JRadioButton button = new JRadioButton(s, false)
         {
            protected void fireActionPerformed(ActionEvent event)
            {
               try
               {
                  textField.setText("No exception");
                  super.fireActionPerformed(event);
               }
               catch (Exception exception)
               {
     //*********Found********
                  textField.setText(exception.toString());
               }
            }
         };
      button.addActionListener(listener);
      add(button);
      group.add(button);
   }
   private ButtonGroup group;
   private JTextField textField;
   private double[] a = new double[10];
}