●试题七阅读以下说明和Java代码,将解答写入答题纸的对应栏内。【说明】下面的程序的功能是利用实现Runnable接口的方法来创建线程,并利用它来执行响应的一些操作。最后使得m的执行结果:100,如图3。注意:请勿改动main()主方法和其他已有的语句内容,仅在下划线处填入适当的语句。class ClassName (1) Runnable{int n;(2) {try{ThreaD.sleep(2000);n=100;}catch( (3) e){}}public static void main(St

题目

●试题七

阅读以下说明和Java代码,将解答写入答题纸的对应栏内。

【说明】

下面的程序的功能是利用实现Runnable接口的方法来创建线程,并利用它来执行响应的一些操作。最后使得m的执行结果:100,如图3。

注意:请勿改动main()主方法和其他已有的语句内容,仅在下划线处填入适当的语句。

class ClassName (1) Runnable{

int n;

(2) {

try{

Threa

D.sleep(2000);

n=100;

}catch( (3) e){}

}

public static void main(String[]args){

try{

ClassName a=new ClassName();

(4)

thread1. (5) ();

thread1.join();

int m=A.n;

System.out.println("m="+m);

}catch( (3) e){}

}

}


相似考题
参考答案和解析
正确答案:
●试题七【答案】(1)implements(2)ClassName(3)Exception(4)ClassNamethread1=newClassName();(5)start【解析】此处为实现接口关键字。此处应填类ClassName的构造函数名,即ClassName。此处应填异常类名Exception。定义并初始化对象thread1。线程的启动函数。
更多“●试题七阅读以下说明和Java代码,将解答写入答题纸的对应栏内。【说明】下面的程序的功能是利用实现Runnable接口的方法来创建线程,并利用它来执行响应的一些操作。最后使得m的执行结果:100,如图3。注意:请勿改动main()主方法和其他已有的语句内容,仅在下划线处填入适当的语句。class ClassName (1) Runnable{int n;(2) {try{ThreaD.sleep(2000);n=100;}catch( (3) e){}}public static void main(St”相关问题
  • 第1题:

    阅读以下说明和Java代码,将解答写入对应栏内。

    【说明】

    下面的程序中定义了两个方法求自然数1~100的和。具体如下:int suml(int n);利用循环求1~n的和,int sum2(int n);利用递归方法求和1~n的和;在main()方法中调用这两个方法求1~100的和并显示。在程序的每条横线处填写一个适当的语句,使程序的功能完整。

    public class Sum {

    public static void main (1)

    {

    //1. 调用sum1(int n),求1~100的和

    //标准输出

    (2) ("1~100的和:" +sum1(100));

    //2. 调用sum2(int n),求1~100的和

    //标准输出

    (2) ("1~100的和:"+sum2(100));

    }

    static iht sum1( int n)

    {

    int result=0;

    for(int i=1;i<=n;i++)

    (3)

    retrun result;

    }

    static int sum2(int n)

    {

    if (4)

    return 1

    else

    (5)

    }

    }


    正确答案:(1)String args[] (2)System. out (3)result=result+n;或等价形式 (4)n==1; (5)return n+sum2 (n-1);
    (1)String args[] (2)System. out (3)result=result+n;或等价形式 (4)n==1; (5)return n+sum2 (n-1); 解析:此处为Java主函数的参数,是固定写法。Java程序的标准输出是调用System包的out对象的函数。循环累加。这是递归调用的结束条件。对n-1进行递归调用,并返回n和n-1个整数和的和。

  • 第2题:

    接口是抽象方法和常量的集合,是一种特殊的抽象类。下面的程序是对接口的操作,请在程序的每条横线处填写一个语句,使程序的功能完整。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。

    ______________MyInterface

    {

    public static int NUM=100;

    public abstract void print();

    }

    public class ClassName___________MyInterface

    {

    public void print()

    {

    System.out.println(NUM);

    }

    public static void main(String args[])

    {

    __________________________

    obj .print();

    }

    }


    正确答案:interface implements ClassName obj=new ClassName();
    interface implements ClassName bj=new ClassName(); 解析:本题主要考查接口、如何生成一个类的对象知识。解答本题的关键是熟练掌握接口、如何生成一个类的对象知识。在本题中,interface MyInterface语句中的interface的功能是声明接口MyInterface,public class ClassName implements MyInterface语句中的implements的功能是声明ClassName并实现MyInterface接口,ClassName bj=new ClassName();语句的功能是生成 ClassName型的对象obj。

  • 第3题:

    下面的程序是用do-while语句计算10的阶乘。请在程序的每条横线处填写1个语句,使程序的功能完整。

    注意:请勿改动main()主方法和其他已有的语句内容;仅在横线处填入适当的语句。

    源程序文件代码清单如下:

    public class DoWhileLoop

    {

    public static void main(______)

    {

    int n=10;

    long result=1;

    do

    {

    _____;

    }

    _____;

    System.out.println("10的阶乘为:"+result);

    }

    }


    正确答案:String args[] result*=n-- while(n>=1)
    String args[] result*=n-- while(n>=1) 解析:本题主要考查main()主方法的使用、 while循环语句的用法。解答本题的关键是熟练掌握main()主方法的使用、while循环语句的用法。在本题中,string args[]的作用是声明字符数组args,result*=n--语句的作用是获得n的阶乘并赋值给变量result。

  • 第4题:

    下面的程序的功能是将数组array下标为奇数的元素相乘(数组的位置是从0开始的),并将乘积存放到变量total中。请在程序的每条横线处填入适当的语句,使程序的功能完整。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。

    public class JiShuJi

    {

    public static void main(String args[ ])

    {

    int array[ ]={1,2,3,5,7,9};

    long total= ________________________;

    for(int i=1;i<=__________________ i++)

    {

    ____________________

    i++;

    }

    System.out.println(total);

    }

    }


    正确答案:1 array.length-1; total*=array[i];
    1 array.length-1; total*=array[i]; 解析:本题主要考查for循环语句和数组的知识。解答本题的关键是熟练掌握for循环语句和数组的知识。一个for循环语句一般应包含4部分内容:(1)初始化部分:用来设置循环控制的一些初始条件,如设置计数器等。(2)循环体部分:这是反复执行的一段代码,可以是单一的一条语句,也可以是复合语句(代码块)。(3)迭代部分:用来修改循环控制条件。常常在本次循环结束,下一次循环开始前执行。例如,使计数器递增或递减。(4)判断部分:也称终止部分。是一个关系表达式或布尔逻辑表达式,其值用来判断是否满足循环终止条件。每执行一次循环都要对该表达式求值。解答循环语句题要抓住这四个部分。

  • 第5题:

    下面的程序是求菲波那契(Fibonacci)数列的前10项。已知该数列的前两项都为1,即F(1)=1,F(2)=1;而后面各项满足: F(n)=F(n-1)+F(n-2)。请在程序的每条横线处填写一条语句,使程序的功能完整。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。

    public class Fibonacci{

    public static void main(String args[]){

    System.out.printtn("Fibonacci is"+" "+"_______________________);

    }

    static long fib(int n){

    if(______________)

    return 1;

    else

    return _________________

    }

    }


    正确答案:fib(10) n==0||n==1 fib(n-1)+fib(n-2);
    fib(10) n==0||n==1 fib(n-1)+fib(n-2); 解析:本题主要考查递归算法。解答本题的关键是理解递归算法的思想。在本题中,fib(10)方法是计算含由10项的菲波那契 (Fibonacci)数列,而fib(n-1)+fib(n-2);是用来计算第0项和第1项以外的菲波那契(Fibonacci)数列。

  • 第6题:

    下面的程序的功能是求1~100的奇数的和及该和的平均值。请在程序的每条横线处填写一个语句,程序的功能完整。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。

    public class SumAndAve{

    public static void main(String args[ ]){

    int count=0,sum=0,ave=0;

    for(int i=1;i<=100;____________________)

    if(_____________________)

    continue;

    else

    {

    ___________________

    sum=sum+i;

    }

    ave=sum/count;

    System.out.println("sum="+sum);

    System.out.println("ave="+ave);

    }

    }


    正确答案:i+=2 i%2==0 ++count;
    i+=2 i%2==0 ++count; 解析:本题主要考查for循环语句的用法。解答本题的关键是熟练使用for循环语句。在本题中,for(int i=1;i=100;i+=2;)语句是用来控制被求的奇数,i+=2;语句是使循环变量递增2,即所求的奇数,在程序中用到的count计数器是记录所求奇数的个数。

  • 第7题:

    下面的程序是用do_while语句计算10的阶乘。请在程序的每条横线处填写一个语句,使程序的功能完整。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。

    源程序文件代码清单如下:

    public class DoWhileLoop

    {

    public static void main(________)

    {

    int n=10;

    long result=1;

    do

    {

    _______________

    }

    ______________

    System.out.println("10的阶乘为: "+result);

    }

    }


    正确答案:String args[] result*=n--; while(n>=1);
    String args[] result*=n--; while(n>=1); 解析:本题主要考查main()主方法的使用、while循环语句的用法。解答本题的关键是熟练掌握 main()土方法的使用、while循环语句的用法。在本题中,String args[]的作用是声明字符数组args, result*=n--;语句的作用是获得n的阶乘并赋值给变量result。

  • 第8题:

    请完成下列Java程序:实现打印出自己的源文件的功能。

    注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。

    import java.io.*;

    import java.util.StringTokenizer;

    public class ex27_2{

    public static void main(String args[])throws IOException{

    FileInputStream fis=new FileInputStream("ex27_2.java");

    DataInputStream dis=new DataInputStream(fis);

    String str=null;

    while(true){

    __________________;

    if(str==null){

    __________________;

    }

    StringTokenizer st=new StringTokenizer(str);

    while(st.hasMoreTokens()){

    System.out.print(st.nextToken()+ " " );

    }

    System.out.println();

    }

    }

    }


    正确答案:str=dis.readLine() break
    str=dis.readLine() break 解析:本题主要考查文件I/O操作和while语句,if语句的使用。解题关键是熟悉文件I/O操作的基本方法,以及利用while语句和if语句控制程序流程。本题中,第1个空,DataInputStream的对象dis调用readLine()方法,从输入流中读取数据,并写给String类的str对象;第二空,如果str为空,则跳出循环体,这里使用break完成跳转。

  • 第9题:

    下面程序执行结果为:

    1×1=1

    2×1=2 2×2=4

    3×1=3 3×2=6 3×3=9

    9×1=9 9×2=18 9×3=27 9×4=36 9×5=45 9×6=54 9×7=63 9×8=72 9×9=81

    请在每条横线处填写一个语句,使程序的功能完整。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。

    public class ForLoopStatement{

    public static void main(String args[]){

    int m,n;

    for(m=1;m<10;_____________)

    ________________;

    System.out.print(m+ "*" + n + "=" + m * n + " " );

    _____________}

    }


    正确答案:m++ for(n=1;n=m;n++) System.out.println();
    m++ for(n=1;n=m;n++) System.out.println(); 解析:本题考查Java的循环语句。一个循环语句一般应包含4部分内容:(1)初始化部分:用来设置循环控制的一些初始条件,如设置计数器等。(2)循环体部分:这是反复执行的一段代码,可以是单一的一条语句,也可以是复合语句(代码块)。(3)迭代部分:用来修改循环控制条件。常常在本次循环结束,下一次循环开始前执行。例如,使计数器递增或递减。(4)判断部分:也称终止部分。是一个关系表达式或布尔逻辑表达式,其值用来判断是否满足循环终止条件。每执行一次循环都要对该表达式求值。解答循环语句题要抓住这四个部分。本题中m++;语句是循环标量的递增1,第一个for(m=1;m10;m++)循环语句是用来控制乘法表的行输出,第二个for(n=1;n=m;n++)循环语句是用来控制乘法表的列输出;语句system.out.prinln();是用来换行输出。

  • 第10题:

    请完成下列Java程序。程序的输出结果:a=6,b=5。

    注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。

    程序运行结果如下:

    public class ex38_2{

    public static void main(String args[])

    {

    int a=5,b=6;

    a=_________;

    b=a-b;

    a=_________;

    System.out.println("a="+a+"\tb="+b);

    }

    }


    正确答案:a+b a-b
    a+b a-b 解析:本题主要考查变量的基本运算。解答本题的关键是理解程序的基本思想。本题的思想是不借助第3个变量来交换两个数的值。

  • 第11题:

    阅读以下说明和Java代码,将解答写入对应栏内。

    【说明】

    请完成下列Java程序。程序的执行结果是生成一个具有一个TextField类型的对象in、 Button类型的对象btn和Label类型的对象out图形用户界面,程序的功能是计算用户输入数的平方,如图3所示。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在下划线处填入适当的语句。

    【程序】

    import java. awt.*;

    import java, awt. event.*;

    public class square {

    public static void main(String args[ ]){

    (1)

    }

    }

    class AppFrame. extends Frame{

    TheAdapterTest listener = new TheAdapterTest( );

    Text Field in = new TextField (5);

    Button btn = new Button("计算");

    Label ut = new Label("用于显示计算结果");

    public AppFrame( )

    {

    setLayout( new FlowLayout( ));

    add(in);

    add(btn)

    add(out);

    btn. addActionListener( new BtnActionAdapter( ));

    addWindowListener (listener);

    setSize(400,100);

    show( );

    }

    class BtnActionAdapter implements (2) {

    public void actionPerformed((3)) {

    String s = in. getText( );

    double d =(4)

    double sq = d * d;

    out. setText(d+"的平方是:" +sq);

    }

    }

    class TheAdapterTest extends WindowAdapter

    {

    public void windowCIosing((5))

    {

    System. exit(1)

    }

    }

    }


    正确答案:(1)new AppFrame() (2)ActionListener (3)ActionEvent (4)IntegerparseInt(s);或等价形式 (5)WindowEvent
    (1)new AppFrame() (2)ActionListener (3)ActionEvent (4)Integer,parseInt(s);或等价形式 (5)WindowEvent 解析:生成类AppFrame的对象。实现接口ActionListener。按钮动作事件类名。将字符串a转化为整数并赋给变量d。窗口事件类名。

  • 第12题:

    ●试题六

    阅读以下说明和Java代码,将解答写入答题纸的对应栏内。

    【说明】

    请完成下列Java程序。程序的执行结果是生成一个具有一个TextField类型的对象in、Button类型的对象btn和Label类型的对象out图形用户界面,程序的功能是计算用户输入数的平方,如图3所示。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在下划线处填入适当的语句。

    【程序】

    import javA.awt.*;

    import javA.awt.event.*;

    public class square {

    public static void main(String args[]){

    (1)

    }

    }

    class AppFrame. extends Frame{

    TheAdapterTest listener=new TheAdapterTest();

    TextField in=new TextField (5) ;

    Button btn=new Button("计算");

    Label ut=new Label("用于显示计算结果");

    public AppFrame()

    {

    setLayout(new FlowLayout());

    add(in);

    add(btn);

    add(out);

    btn.addActionListener(new BtnActionAdapter());

    addWindowListener(listener);

    setSize(400,100);

    show();

    }

    class BtnActionAdapter implements (2) {

    public void actionPerformed( (3) ){

    String s=in.getText();

    double d= (4)

    double sq=d*d;

    out.setText(d+"的平方是:"+sq);

    }

    }

    class TheAdapterTest extends WindowAdapter

    {

    public void windowClosing( (5) )

    {

    System.exit (1) ;

    }

    }

    }


    正确答案:

    ●试题六

    【答案】 (1)new AppFrame()

    (2)ActionListener

    (3)ActionEvent

    (4)Integer.parseInt(s);或等价形式

    (5)WindowEvent

    【解析】生成类AppFrame的对象。实现接口ActionListener。按钮动作事件类名。将字符串s转化为整数并赋给变量d。窗口事件类名

  • 第13题:

    下列程序打包到example包,main方法调用线程类输出0~9这10个数,请填写横线处的内容。

    注意:请勿改动main()主方法和其他已有语句内容,仅在横线处填入适当语句。

    ______

    interface MyInterface

    {

    public abstract void print(int n);

    }

    class Mythread extends Thread ______ MyInterface

    {

    public void run()

    {

    for(int i = 0; i < 10; i++)

    this.print(i);

    }

    public void print(int n)

    {

    System.out.print(n +" ");

    }

    }

    public class Example1_6

    {

    public static void main(String argv[])

    {

    Mythread th = new Mythread();

    ______

    }

    }


    正确答案:①package example; ②implements ③th.start();
    ①package example; ②implements ③th.start(); 解析:MyInterface是自定义的一个接口,Mythread继承于Thread类同时实现了 MyInterface。主方法先根据Mythread生成一个线程,然后将其启动。
    第1个空,题目中已经说明要将本程序打包到 example包,则说明要使用关键字“package”。
    第2个空,接口是抽象方法和常量的结合,是一种特殊的抽象类,接口必须通过“implements”实现以后才能被使用。所有线程都通过start()启动,进入线程调度队列。然后,系统会根据一定的算法对线程的运行进行调度,run()方法是线程的线程体。故第3空应该填“th.start()”。

  • 第14题:

    下面的程序是10000以内的“相亲数”。所谓相亲数是指这样的一对数:甲数的约数之和等于乙数,而乙数的约数等于甲数,(例如220和284是一对相亲数)请在程序的每条横线处填写一条语句,使程序的功能完整。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。

    public class QinShu{

    public static void main(String args[ ]){

    for(int n=1;n<9999;n++){

    int s=divsum(n);

    if( )

    System.out.println(n+","+s);

    }

    }

    public static int divsum(int n){//该方法的功能是求一个数的所有约数

    int s=0;

    for(int i=1;____________________i++)

    if(____________________)s+=i;

    return s;

    }

    }


    正确答案:ns&&divsum(s)==n in; n%i==0
    ns&&divsum(s)==n in; n%i==0 解析:本题主要考查for循环语句、逻辑与运算符(&&)和求余运算符(%)。解答本题的关键是熟悉使用for循环语句。在本题中, if(ns&&divsum(s)==n)语句是用来调用divsum(n)方法(其中n为方法的实际参数)和判断某个自然数是否为“完全数”。for(int i=1;in;i++)循环语句是用来控制被判断的数是否为“相亲数”。if(n%i==0)语句是用来判断数n是否能被数i整除。

  • 第15题:

    下面程序执行后,输出结果为:true请在程序的每条横线处填写一个语句,使程序的功能完整。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。

    public class TestStringCompare{

    {public static void main(String ____________________ args)

    {char charl[]={'t','e','s','t'};

    char char2[]={'t','e','s','t','1'};

    String str1=new String(___________________);

    String str2=new String(char2,0,4);

    System.out.println(__________________________);

    }

    }


    正确答案:[ ] char1 str1.equals(str2)
    [ ] char1 str1.equals(str2) 解析:本题主要考查main()主方法的使用、String类的使用。解答本题的关键是熟练掌握main()主方法的使用、String类的使用。在本题中,public static void main(String[]args)中的[]是定义数组的标志,str1.equals(str2)语句的功能是判断字符串str1和字符串str2的内容是否相等。

  • 第16题:

    创建线程对象,要传递代码与数据,而传递代码与数据有两种方法,一是通过继承Thread类,二是向Thread类传递一个Runnable对象。请在下面程序的每条横线处填写一个语句,使程序的功能完整。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。

    public class TestThread{

    public static void main(String args[ ])

    {

    MyThread t=new MyThread();

    _______________________

    }

    }

    class MyThread_____________Thread{

    _____________________

    {

    for(int i=0;i<10;i++){

    System.out.println(" " +i);

    }

    }

    }


    正确答案:t.start(); extends public void run();
    t.start(); extends public void run(); 解析: 本题主要考查创建线程的方法、线程的执行过程。解答本题的关键是熟练掌握创建线程的方法、执行过程。在本题中, t.start();语句的功能是启动线程t,使其处于可运行状态,classMyThreadextendsThread中的extends的作用是使Mythread线程为线程Thread的直接子类,public void run()的功能是重载run()方法。

  • 第17题:

    下面的程序的功能是简单的进行键盘输入测试,请在程序的每条横线处填写一个语句,使程序的功能完整。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。

    ____________________

    public class TestKeyBoardInPut

    {public static void main(String[] args)

    {String yourname=JOptionPane. ____________________ ("What is your name?");

    System.out.println("Hello"+yourname);

    ____________________.exit(0);

    }

    }


    正确答案:import javax.swing.*; showInputDialog System
    import javax.swing.*; showInputDialog System 解析:本题主要考查javax.swing包、showInputDialog()方法。解答的关键是掌握javax.swing包、showInputDialog()方法。在本题中,import javax.swing.*;语句的功能是导入javax.swing包,String yourname=JOptionPane.showInputDialog("What is your name?");语句的功能是从控制台键盘读入字符串并赋值yourname,System.exit(0);语句的功能是退出Java的运行环境回到操作系统环境下。

  • 第18题:

    请完成下列Java程序:程序的功能演示了如何通过实现Runnable接口创建线程对象,程序中定义了一个类B,类中重写了含一个字符串参数的构造方法,并实现了Runnable接口,即在类B中编写了接口中的run()方法的方法体。还定义了一个应用程序类ex35_2,其中创建类B的3个对象b1,b2和b3作为线程对象t1,t2和t3的参数,并启动这3个线程。

    注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。

    程序运行结果如下:

    public class ex35_2

    {

    public static void main(String args[ ])

    {

    Runnable b1=new B("First");

    Runnable b2=new B("Second");

    Runnable b3=new B("Third");

    Thread t1=new Thread(b1);

    Thread t2=new Thread(b2);

    Thread t3=new Thread(b3);

    t1.start ();

    t2.start ();

    t3.start();

    }

    }

    class B _____________________ Runnable

    {

    String s;

    public B(String str)

    {

    s=str;

    }

    _________________

    {

    for(int i=1;i<3;i++)

    {

    System. out. println ( s+ "运行!");

    try

    {

    Thread.sleep((int) (Math.random() *100) );

    }

    catch (InterruptedException e)

    {

    e.printStackTrace ( );

    }

    }

    System. out.println (s+"结束!");

    }

    }


    正确答案:implements public void run()
    implements public void run() 解析:本题主要考查Java中有关线程的基本操作。解题关键是要熟练掌握有关线程的基本知识。在Java中创建线程有两种基本方法:(1)是通过实现Runnable接口创建线程。(2)通过继承Thread类创建线程。第1个空,应该填implements关键字,其功能是实现Runnable接口。第2个空,应该填public void run(),其功能是重写run()方法。

  • 第19题:

    下面的程序是打印输出100~300之间的不能被3整除的数。请在每条横线处填写一条语句,使程序的功能完整。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填人适当的语句。

    public class printNo3and5{

    void print()

    {

    int n ;

    for(n=100 ;n<=300 ;n++){

    if(n%3==0)

    __________

    System.out.println(n);

    }

    }

    public static__________main(String args[])

    {

    printNo3and5 bj=new printN03and5();

    __________

    }

    }


    正确答案:continue; void obj.print();
    continue; void obj.print();

  • 第20题:

    请在每条横线处填写一个语句,使程序的功能完整,且输出结果为91 1。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。

    源程序文件代码清单如下:

    public class Outer

    {

    public static void main (String args[]

    {

    Outer i = new Outer();

    i,taskInner();

    }

    public class Inner

    {

    private int size;

    public void doSomething(int size)

    {

    _____________//访问局部变量

    this. size++; //访问内部类的成员变量

    _____________//访问外部类的成员变量

    System.out.println(size+" "+this.size+" "+Outer.this.size);

    }

    }

    public void taskInner()

    {

    ___________

    k.doSomething(8);

    }

    private static int size;

    }


    正确答案:size++; Outer.this.size++: Inner k=new Inner();
    size++; Outer.this.size++: Inner k=new Inner(); 解析:本题主要考查内部类的概念,super,this关键字的用法。解答本题的关键是熟练掌握super, this关键字的用法。在本题中size++;语句是访问局部变量size,Outer.this.size++;语句的功能是访问外部类的成员变量size,InnerK=new Inner();语句的功能是生成内部类Inner的对象K。

  • 第21题:

    阅读以下说明和Java代码,将解答写入对应栏内。

    【说明】

    下面的程序的功能是利用实现Runnable接口的方法来创建线程,并利用它来执行响应的一些操作。最后使得m的执行结果:100,如图3。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在下划线处填入适当的语句。

    class ClassName (1) Runnable {

    int n;

    (2) {

    try{

    Thread. sleep (2000);

    n=100;

    }catch( (3) e) {}

    }

    public static void main(String[ ]args) {

    try{

    ClassName a = new ClassName( );

    (4)

    threadl. (5) ();

    threadl, join( );

    int m=a.n;

    System. out. println("m=" + m);

    }catch( (3) e){}

    }

    }


    正确答案:(1)implements (2)ClassName (3)Exception (4)ClassName threadl=new ClassName(); (5)start
    (1)implements (2)ClassName (3)Exception (4)ClassName threadl=new ClassName(); (5)start 解析:此处为实现接口关键字。
    此处应填类ClassName的构造函数名,即ClassName。此处应填异常类名Exception。定义并初始化刘象threadl。线程的启动函数。

  • 第22题:

    阅读以下说明和Java代码,将解答写入对应栏内。

    【说明】

    下面的程序是从命令行输入3个数传递到public static void main(String args[])方法中 (如java IsTriangle 3 4 5),并判断这3个数能否构成三角形的3条边,并显示相应的结果。请在程序的每条横线处填入适当的语句,使程序的功能完整。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。

    public class IsTriangle{

    public static void main( String args[ ]){

    int a[] =new (1) [args.(2)];

    for(int i=0;i<3;(3))

    {

    a[i]=(4)

    }

    if((5))

    System. out. println(a[0] +","+a[1] +","+a[2]"能构成三角形的3条边");

    else

    System. out. println(a[0] +","+a[1] +","+a[2]"不能构成三角形的3条边);

    }

    }


    正确答案:(1)int (2)length (3)i++ (4)args[i] (5)a[0]+a[1]>a[2]或等价形式
    (1)int (2)length (3)i++ (4)args[i] (5)a[0]+a[1]>a[2]或等价形式 解析:声明并创建数组,通过length属性取得参数的长度,循环递增条件,将输入参数逐个传给a[i],构成三角形的条件,两边之和大于第三边或者两边之差小于第三边。

  • 第23题:

    下面是关于字符界面基本输入输出的程序,请在程序的每条横线处填写一个语句,使程序的功能完整。

    注意:请勿改动main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。

    ______________________

    public class SimpleCharInOut{

    public static void main(String args[]){

    char c=" ";

    System.out.println("Enter a character please: ");

    try{

    ____________________//接受用户键盘输入的字符并保存在变量c中

    }

    catch(________________________e){}

    System.out.println("You've entered character "+c);

    }

    }


    正确答案:import java.io.*; c=(char)System.in.read(); IOException或Exception
    import java.io.*; c=(char)System.in.read(); IOException或Exception 解析:本题主要考查try-catch异常捕获结构。解答本题的关键是熟练掌握异常的捕获知识。在本题中,import java.io.*;语句的功能是导入java.io包,c=(char)System.in.read();语句的功能是从键盘缓冲区获得一个字符数据,并赋给字符变量C,IOExcepfion e声明一个IOExcepfion型对象e。