open 发表于 2018-4-24 17:20:30

西南大学18春0837《面向对象程序设计》在线作业题目

0837
1、下列合法的JAVA标识符是()

辅导联系q761296021
    B.+void
    F._black
    -5
    12class
参考答案:F._black;
2、向applet传递参数的正确方式的是()
    E.&lt;appletTest33&gt;<applet33=""test=""></applet>
    &lt;appletcode=Test.classname=agevalue=33width=1height=1&gt;<appletcode="Test.class"name="age"value="33"width="1"height="1"></applet>
    &lt;appletcode=Test.classage=33width=1height=1&gt;<appletcode="Test.class"age="33"width="1"height="1"></applet>
    &lt;paramname=agevalue=33&gt;
参考答案:&lt;paramname=agevalue=33&gt;;
3、关于constructor,下列描述正确的是()
    class中的constructor不可省略
    constructor在一个对象被new时执行
    一个class只能定义一个constructor
    constructor必须与class同名,但方法不能与class同名
参考答案:constructor在一个对象被new时执行;
4、以下哪个方法用于定义线程的执行体?()
    C.run()
    main()
    start()
    init()
5、在JAVA程序中要使用一个变量,以下描述不正确的是()
    在JAVA程序中要使用一个变量,必须先对其进行声明
    局部变量在使用之前可以不初始化,系统使用默认的初始值
    变量不可以在其作用域之外使用
    变量声明语句可以在程序的任何地方,只要在变量使用前就可以
6、关于abstract(抽象),下列描述正确的是()
    声明抽象方法,大括号{}可有可无
    声明抽象方法不可写出大括号{}
    abstract修饰符可修饰字段、方法和类
    抽象方法的body部分必须用一对大括号{}包住
7、以下哪个赋值语句是不合法的?()
    doubleb=2.0;
    intc=2;
    longd=2;
    floata=2.0;
8、方法resume()负责恢复以下哪类线程的执行?()
    通过调用stop()方法而停止的线程
    通过调用sleep()方法而停止的线程
    通过调用suspend()方法而停止的线程
    通过调用wait()方法而停止的线程
9、欲构造ArrayList类的一个实例,此类继承了List接口,下列正确的代码是()
    ArraylListmyList=newList();
    ArrayListmyList=newObject();
    ListmyList=newList();
    ListmyList=newArrayList();
10、以下哪个修饰符可用于定义成员常量?()
    static
    final
    abstract
    Nomodifiercanbeused
11、关于异常(Exception),下列描述错误的是()
    A.异常可以随便处理,而不是抛给外层的程序进行处理
    如果某异常继承RuntimeException,则该异常可以不被声明    无忧答案网www.ap5u.com
    异常的基类为Exception,所有异常都必须直接或者间接继承它
    异常可以用try{...}catch(Exceptione){...}来捕获并进行处理
12、执行完以下代码int[]x=newint;后,以下描述正确的是()
    x为0
    x未定义
    x为空
    x为0
13、下列关于修饰符的描述,错误的是()
    abstract不能与final并列修饰同一个类
    abstract类中可以有private的成员
    abstract方法必须在abstract类中
    static方法中能处理非static的属性
14、下面可以改变容器的布局的是()
    layout(aLayoutManager);
    setLayout(aLayoutManager);
    setLayoutManager(aLayoutManager);
    addLayout(aLayoutManager);
15、不是JAVA语言保留字的是()
    if
    private
    sizeof
    null
16、关于线程设计,下列描述正确的是()
    启动一个线程直接调用线程对象的run()方法
    一个线程可以包含多个进程
    线程对象必须实现Runnable接口
    Java提供对多线程同步提供语言级的支持
17、下列关于实例方法的描述,正确的是()
    实例方法可直接调用超类的类方法
    实例方法可直接调用其他类的实例方法
    实例方法可直接调用超类的实例方法
    实例方法可直接调用本类的类方法
18、阅读下面的程序:<imgalt=""src="http://77file.eduwest.com/fileup/homework/0837/251/accessories/1268882544921/1264139626842/1268740099570.JPG"/>该程序运行的输出结果是:()
    eace
    PEACE
    ecaep
    ECAEP
19、阅读下面的程序:<imgalt=""src="http://77file.eduwest.com/fileup/homework/0837/251/accessories/1268882544921/1264139626823/1268740099569.JPG"/>该程序运行的输出结果是:()
    0123456789ABCDEF
    ABCDEF0123456789
    0123456789abcdef
    fedcba9876543210
20、阅读下面的程序:<imgalt=""src="http://77file.eduwest.com/fileup/homework/0837/251/accessories/1268882544921/1264139626715/1268740099567.JPG"/>该程序运行的输出结果是:()
    12248
    224832
    1441664
    12624120
21、阅读下面程序:<imgalt=""src="http://77file.eduwest.com/fileup/homework/0837/251/accessories/1268882544921/1264139626633/1268740099564.JPG"/>该程序运行的输出结果是:()
    sum=6
    sum=12
    sum=32
    sum=64
22、从开始执行到执行结束,小应用程序经历的3个状态分别是:()
    初始态、就绪态,结束态
    就绪态、运行态,停止态
    初始态、运行态,停止态
    就绪态、运行态,休眠态
23、下列关于Java小应用程序(Applet)的说法中,正确的是:()
    java.applet.Applet类是所有Java小应用程序的基类
    Java小应用程序不需要编译
    Java小应用程序也需要main()方法
    Java小应用程序必须实现ActionListener接口
24、Swing的三个顶层容器分别是:()
    JApplet,JPanel,JWindow
    JDialog,JApplet,JFrame
    JApplet,JFrame
    JMenu
    JFrame,JPanel,JTextArea
25、把容器划分为东、西、南、北、中5个区域的布局管理器是:()
    BoxLayout
    FlowLayout
    ardLayout
    BorderLayout
26、下列语句序列执行之后,b1,b2,b3,b4的值分别是:()Strings1=peace;Strings2=newString(s1);Strings3=s2;Strings4=newString(PEACE);booleanb1=(s1==s2);booleanb2=s1.equals(s2);booleanb3=(s3==s2);booleanb4=s4.equals(s3);
    true,true,false,false
    false,true,true,true
    false,true,true,false
    false,true,false,false
27、下列构造String的语句中,不正确的是()
    Stringstr2=&quot;&quot;;
    Stringstr1=newString();
    Stringstr4=&quot;&quot;+123;
    Stringstr3=newString(123);
28、关于构造方法,下列描述不正确的是()
    构造方法用于创建类的实例
    构造方法不可以重载
    构造方法不具有返回值类型
    构造方法名必须和类名相同
29、既能作为类的修饰符,也能作为类成员的修饰符的是()
    public
    extends
    void
    static
30、执行完下列语句后,变量x的值是()intx=7,y=10;switch(x/y){case0:x++;case7:x*=y;case14:x+=y;break;default:x%=y;}
    8
    70
    80
    90
31、以下由for语句构成的循环的执行次数是:()for(inti=0;i&lt;=0;i=i);
    有语法错,不能执行
    一次也不执行
    执行1次
    无限次
32、设有定义inti=7;charch=b;下面赋值语句中不正确是:()
    i=ch;
    ch=i;
    ch=(char)i;
    i=(int)ch;
33、设有定义inti=80,j=7;doubled=80.7;则下列语句中正确的赋值语句是:()
    i=d;
    i=(int)d+j;
    j=(int)i-d;
    i+j=(int)d;
34、以下关于Java语言的叙述错误的是:()
    Java是最纯粹的面向对象语言,对面向对象方法学的支持也最全面
    Java是解释执行的语言,由Java解释器负责将Java源文件解释为机器码执行
    Java是平台无关的,即Java程序不用修改就可以在不同类型的计算机平台上运行
    Java提供了大量功能丰富的可重用类库,有效减少了编程的工作量
35、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序“一次编写,到处运行”的特点:()
    多线程
    与平台无关
    面向对象
    分布式
36、下列选项中,用于声明实现一个接口关键字是:()
    interface
    implements
    import
    abstract
37、下列不属于Java语言关键字的是()
    repeat
    try
    break
    new
38、下列字符序列中可以作为Java语言标识符的是()
    true
    123_xyz
    x.y
    _x123
39、下列字符序列中不能作为Java语言标识符的是()
    abc_123
    圆周率PI
    false
    _123abc
40、下面哪个是main()函数的合法参数?()
    D.charargs[]
    charargs[][]
    Stringargs
    Stringargs[]
41、问:阅读下面的Java代码,写出打印语句的输出结果(即类的初始化顺序)。publicclassInitialOrderTest{//静态变量publicstaticStringstaticField=静态变量;//变量publicStringfield=变量;//静态初始化块static{System.out.println(staticField);System.out.println(静态初始化块);}//初始化块{System.out.println(field);System.out.println(初始化块);}//构造器publicInitialOrderTest(){System.out.println(构造器);}publicstaticvoidmain(String[]args){newInitialOrderTest();}}
42、问:Math.round(11.5)返回多少?Math.round(-11.5)返回多少?
43、问:下面的Java程序,编译时会报什么错误?importjava.io.*;classSuperClass{publicvoidfun()throwsIOException{}}classSubClass1extendsSuperClass{publicvoidfun()throwsException{System.out.println(SubClass::fun());}}classSubClass2extendsSuperClass{publicvoidfun()throwsFileNotFoundException,ArithmeticException{System.out.println(B6::method());thrownewArithmeticException(被除数为0);}}
44、问:下面的TestStaticMain.java程序能否通过编译?哪条语句会报错?publicclassTestStaticMain{publicstaticvoidmain(String[]args){Personp=newPerson(10,wangke);p.print();}classPerson{privateintID;privateStringname;Person(intID,Stringname){this.ID=ID;this.name=name;}publicvoidprint(){System.out.println(ID=+ID);System.out.println(name=+name);}}}
45、问:阅读下面的Java代码,写出打印语句(1)、(2)、(3)的输出结果,并解释原因。Stringstr1=newString(wangke);Stringstr2=newString(wangke);System.out.println(str1==str2);//(1)System.out.println(str1.equals(str2));//(2)System.out.println(str1.hashCode()==str2.hashCode());//(3)
46、问:阅读下面的JavaGUIApplication。在点击“测试”按钮后,控制台的输出信息是什么?importjava.awt.*;importjavax.swing.*;importjava.awt.event.*;publicclassTest{publicstaticvoidmain(String[]args){newMyFrame().launchFrame();}}classMyFrameextendsJFrame{JButtonbtn=newJButton(测试);Containerctp=getContentPane();publicvoidlaunchFrame(){setBounds(200,200,250,160);setResizable(false);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);ctp.setLayout(newBorderLayout(10,10));ctp.add(North,btn);btn.addActionListener(newMyActionListener());//btn注册监听器1btn.addActionListener(newYourActionListener());//btn注册监听器2setVisible(true);}classMyActionListenerimplementsActionListener{publicvoidactionPerformed(ActionEvente){if(e.getSource()==btn){System.out.println(inMyActionListener);}}}classYourActionListenerimplementsActionListener{publicvoidactionPerformed(ActionEvente){if(e.getSource()==btn){System.out.println(inYourActionListener);}}}}
47、问:数组有没有length()这个方法?String有没有length()这个方法?
48、问:&amp;与&amp;&amp;的区别是什么?
49、问:Java编程中,想要获得Class类对象,有哪3种方法?
50、问:Java编程中,实例化对象有哪5种方法?
51、问:有一个程序IO.java,代码如下。发现输入1之后,还没等到输入宽,程序就直接输出了637。为什么?importjava.io.*;classIO{publicstaticvoidmain(Stringargs[])throwsIOException{System.out.println(计算矩形面积);System.out.print(请输入长:);inta,b;a=System.in.read();System.out.print(请输入宽:);b=System.in.read();System.out.println(计算矩形面积是:+a*b);}}运行:C:\temp&gt;javaIO计算矩形面积请输入长:1请输入宽:计算矩形面积是:637
52、问:下面的Java程序,打印结果是什么?publicclassTest{publicstaticvoidchangeStr(Stringstr){str=welcome;}publicstaticvoidmain(String[]args){Stringstr=1234;changeStr(str);System.out.println(str);}}
53、问:下面的Java程序,编译时会报什么错误?classSuperClass{publicvoidfun(){}}classSubClassextendsSuperClass{privatevoidfun(){System.out.println(SubClass::fun());}}
54、问:下面的代码是否能输出wangke?try{System.exit(0);}finally{System.out.println(wangke);}
55、问:Strings=newString(xyz);创建了几个StringObject?
56、问:下面的Test.java程序,有哪两处错误?ClassTest{voidf(){publicinti;}}
57、问:intcount=10;count+=++count;System.out.println(count);能否通过编译?打印输出是多少?
58、问:下面的Test.java程序,输出结果是derive吗?classbase{privatevoidprint(){//注意:private修饰System.out.println(base);}publicvoiddoprint(){print();}}classderiveextendsbase{privatevoidprint(){//注意:private修饰System.out.println(derive);}}classTest{publicstaticvoidmain(String[]args){baseb=newderive();b.doprint();}}
59、阅读下面的程序,写出程序运行的输出结果。publicclassTest2{publicstaticcharmethod(charch){if((ch&gt;=&#39;A&#39;)&amp;&amp;(ch&lt;=&#39;Z&#39;))return(char)(ch+32);elsereturnch;}publicstaticvoidmain(String[]args){Strings=0123456789ABCDEF,s1=;for(inti=s.length()-1;i&gt;=0;i--)s1=s1+method(s.charAt(i));System.out.println(s1);}}
60、阅读下面程序,并回答问题。(1)try块中包含的哪些语句或表达式可能抛出异常?(2)流DataOutputStream和DataInputStream常被用于何种操作?(3)假定文件out.txt中原本没有任何数据,这段程序执行完成后,文件out.txt的内容是什么?程序在控制台窗口输出什么?importjava.io.*;publicclassTest4{publicstaticvoidmain(Stringargs[]){try{DataOutputStreamdout=newDataOutputStream(newFileOutputStream(out.txt));for(inti=0;i&lt;10;i++)dout.writeInt(0+i);dout.close();DataInputStreamdin=newDataInputStream(newFileInputStream(out.txt));for(inti=0;i&lt;10;i++)System.out.print(din.readInt()-0+,);din.close();}catch(IOExceptione){System.err.println(发生异常:+e);e.printStackTrace();}}}
61、JavaAWT程序设计:在窗口中画出三个TextField(前两个用于接收用户输入的两个整数,第三个用于显示相加和),一个加号Label,一个等于号Button.当按下Button时,将相加之和放到第三个TextField中。注意:不允许使用内部类。
62、阅读下面的程序,写出输出结果。publicclassMyException{publicstaticvoidthrowException(){System.out.println(产生并抛出ArithmeticException类型的异常);thrownewArithmeticException();}publicstaticvoidcatchArrayException(){try{throwException();System.out.println(在try语句块中的多余语句);}catch(ArrayIndexOutOfBoundsExceptione){System.err.println(方法catchArrayException捕捉到异常);}finally{System.out.println(方法catchArrayException的finally语句块);}System.out.println(方法catchArrayException运行结束);}publicstaticvoidmain(String[]args){try{catchArrayException();}catch(ArithmeticExceptione){System.err.println(方法main捕捉到异常);}finally{System.out.println(方法main的finally语句块);}System.out.println(异常处理结束);}}
63、问:下面语句中的错误都是在Java数据类型转换中的易错点。分析语句的错误原因并改正。(1)floatf1=0.1;(2)longl1=12345678,l2=8888888888;(3)byteb1=1,b2=2,b3=129;(4)byteb=b1-b2;(5)inti=1;i=i*0.1;//有错(6)charc1=&#39;a&#39;,c2=125;charc=c1+c2-1;//有错(7)floatf1=0.1f,f2=123;floatf3=f1+f2*0.1;//有错
64、阅读下面的程序,写出输出结果。classParent{//静态变量publicstaticStringp_StaticField=父类--静态变量;//变量publicStringp_Field=父类--变量;//静态初始化块static{System.out.println(p_StaticField);System.out.println(父类--静态初始化块);}//初始化块{System.out.println(p_Field);System.out.println(父类--初始化块);}//构造器publicParent(){System.out.println(父类--构造器);}}publicclassSubClassextendsParent{//静态变量publicstaticStrings_StaticField=子类--静态变量;//变量publicStrings_Field=子类--变量;//静态初始化块static{System.out.println(s_StaticField);System.out.println(子类--静态初始化块);}//初始化块{System.out.println(s_Field);System.out.println(子类--初始化块);}//构造器publicSubClass(){System.out.println(子类--构造器);}//程序入口publicstaticvoidmain(String[]args){newSubClass();}}
65、请按下面的要求编写程序。</P><P>(1)定义一个接口Shapes,它至少包含一个可以计算面积的成员方法。</P><P>(2)编写实现该Shapes接口的两个类:正方形类和圆形类。</P><P>(3)编写一个具有泛型特点的类Map,要求该类可以在控制台窗口输出某种图形的面积,而且这个类的类型变量所对应的实际类型就是(2)编写的正方形类和圆形类。</P><P>(4)利用具有泛型特点的类Map在控制台窗口分别输出给定边长的正方形的面积和给定半径的圆的面积。
66、<P>阅读下面程序,写出程序的输出结果。</P><P>classSuperClass{<BR>intdata;<BR><BR>SuperClass(){<BR>System.out.println("SuperClass::constructor:data="+data);<BR>add(1);<BR>System.out.println("SuperClass::constructor:data="+data);<BR>}<BR><BR>publicvoidadd(inti){<BR>data+=i;<BR>}<BR><BR>publicvoidprint(){<BR>System.out.println(data);<BR>}<BR>}</P><P>classSubClassextendsSuperClass{<BR>SubClass(){<BR>System.out.println("SubClass::constructor:data="+data);<BR>add(2);<BR>System.out.println("SubClass::constructor:data="+data);<BR>}<BR>publicvoidadd(inti){<BR>data+=i*2;<BR>}<BR>}</P><P>classTest{<BR>publicstaticvoidmethod(SuperClassa){<BR>a.add(6);<BR>a.print();<BR>}<BR>publicstaticvoidmain(String[]args){<BR>method(newSubClass());<BR>}<BR>}</P><P></P>
67、编写一个简单的乘法器,界面如下图所示,在第一个文本框中输入第一个乘数;在第二个文本框中输入第二个乘数;当单击“=”按钮时,在第三个文本框中输出其乘积。</P><Palign=center><IMGalt=""src="http://77file.eduwest.com/fileup/homework/0837/250/accessories/1268882586585/1264139627166/1268740099575.JPG"border=0
68、请设计一个软件包。要求该软件包至少拥有正方形类、圆类。要求每个类都具有构造方法、计算该图形的周长的成员方法和计算该图形的面积的成员方法。然后编写一个测试程序,分别创建这些类的实例对象,并输出这些实例对象的周长和面积。在创建这些实例对象时,构造方法的调用参数值分别是:<BR>正方形:左上定点的坐标为(5,10),边长为15。<BR>圆形:圆心的坐标为(0,0),圆心为15。<BR>
69、编写一个程序,要求随机生成61个学生的成绩(从0到100的整数),在将成绩排序(由高到低)后保存到文件“score.txt”中。
70、<P>阅读下面程序,并回答问题。</P><P>(1)Java程序分为哪两种类型,这段程序是哪一类Java程序?<BR>(2)这个图形用户界面上包含那几类组件?点击按钮后程序显示什么?<BR>(3)ActionListener是什么?程序中哪个方法是ActionListener中的方法?其功能是什么?</P><P>importjavax.swing.*;<BR>importjava.awt.*;<BR>importjava.awt.event.*;</P><P>publicclassTest4extendsJAppletimplementsActionListener{<BR>privateContainercp=getContentPane();;<BR>privateJLabelprompt=newJLabel("请点击按钮");<BR>privateJButtonstart=newJButton("开始");<BR>privateJTextFieldoutput=newJTextField(20);<BR>publicvoidinit(){<BR>cp.setLayout(newFlowLayout());<BR>cp.add(start);<BR>cp.add(prompt);<BR>cp.add(output);<BR>output.setEditable(false);<BR>start.addActionListener(this);<BR>}<BR>publicvoidactionPerformed(ActionEvente){<BR>if((JButton)e.getSource()==start)<BR>output.setText("好好学习,天天向上");<BR>}<BR>}</P><P></P>
71、阅读下面程序,并回答问题。(1)类Test3和类SuperTest之间是什么关系?(2)关键字super和this分别是什么含义?(3)这段程序的输出是什么?classSuperTest{publicintage;publicSuperTest(Strings){System.out.println(Hi,Iam+s);age=35;}}publicclassTest3extendsSuperTest{publicintage;publicTest3(Strings){super(s);System.out.println(Nicetomeetyou!);age=7;}publicvoidprint(){System.out.println(Ageis+age);System.out.println(Myageis+this.age);System.out.println(Myparentsageis+super.age);}publicstaticvoidmain(Stringargs[]){Test3test=newTest3(Olive);test.print();}}
72、程序设计:在命令行中以树状结构展现给定的文件夹及其子文件(夹)中的文件。测试文件夹为C:Windows,层次用缩进4个空格表示。
73、写出下面程序的执行结果。publicclassIntern{publicstaticvoidmain(String[]args){Strings1=123456;//字符串直接量Strings2=123456;//字符串直接量Strings3=123+456;Stringa0=123;Strings4=a0+456;//这不是字符串直接量Strings5=newString(123456);//这不是字符串直接量Strings6=s5.intern();System.out.println(s2+((s2==s1)?==:!=)+s1);System.out.println(s3+((s3==s1)?==:!=)+s1);System.out.println(s4+((s4==s1)?==:!=)+s1);System.out.println(s5+((s5==s1)?==:!=)+s1);System.out.println(s6+((s6==s1)?==:!=)+s1);}}
74、问:下面程序的执行结果是什么?classTest{publicstaticvoidmain(String[]args){intsum=0;outer:for(inti=1;i&lt;10;i++){inner:for(intj=1;j&lt;3;j++){sum+=j;if(i+j&gt;6)continueinner;}}System.out.println(sum=+sum);}}
75、下面程序的执行结果是什么?classSuperClass{voidmethod(){System.out.println(SuperClass::method);}voidfun(){System.out.println(SuperClass::fun);this.method();}}classSubClassextendsSuperClass{voidmethod(){System.out.println(SubClass::method:Begin);super.fun();System.out.println(SubClass::method:End);}}classTest{publicstaticvoidmain(String[]args){SubClassa=newSubClass();a.method();}}
76、下面的程序错在哪里?如何修改?classSuperClass{}classSubClassextendsSuperClass{}classTest{publicstaticvoidmain(String[]args){SuperClassa=newSuperClass();SubClassb=newSubClass();b=(SubClass)a;}}
77、下列语句序列给出了k,myArr和myMethod()的声明。当调用方法myMethod(myArr,k)之后,存储在myArr和k里的值分别是什么?intk=7;StringmyArr[]={“love”,“peace”,”and”};voidmyMethod(Stringa[],intm){Stringtemp=a;a=a;a=temp;m=a.length();}
78、阅读下面程序,并回答问题。(1)类Child和类Parent之间是什么关系?(2)关键字super和this分别是什么含义?(3)这段程序的输出是什么?classParent{publicvoidprintMe(){System.out.println(parent);}}classChildextendsParent{publicvoidprintMe(){System.out.println(child);}publicvoidprintAll(){super.printMe();this.printMe();;}}publicclassTest3{publicstaticvoidmain(Stringargs[]){ChildmyC=newChild();myC.printAll();}}<br
79、阅读下面的程序,写出程序运行的输出结果。publicclassTest1{publicintmethod(intn){intresult=1;for(inti=1;i&lt;=n;i++){result*=i;}returnresult;}publicstaticvoidmain(Stringargs[]{Test1test=newTest1();intsum[]=newint;for(inti=1;i&lt;=5;i++){sum=test.method(i);System.out.print(sum+);}}}
80、写一个JavaApplication。让用户在文本框中输入一个字符串,程序会将其中的大写字母变为小写字母,小写字母为变大写字母(其余字符不变),并按照逆序将它们显示在一个文本域中。(例如:用户输入“abc123XYZ”,点击按钮或按下回车,程序会输出“zyx321CBA”)
转载 注明 无忧答案网,辅导联系qq761296021
页: [1]
查看完整版本: 西南大学18春0837《面向对象程序设计》在线作业题目