西南大学面向对象程序设计作业及笔试答案
- 格式:docx
- 大小:73.28 KB
- 文档页数:33
0837 20182单项选择题1、下列合法的JAVA标识符是(). B. +void. F. _black. -5.12class2、关于constructor,下列描述正确的是().class中的constructor不可省略.constructor在一个对象被new时执行.一个class只能定义一个constructor.constructor必须与class同名,但方法不能与class同名3、以下哪个方法用于定义线程的执行体?(). C. run().main().start().init()4、在JAVA程序中要使用一个变量,以下描述不正确的是().在JAVA程序中要使用一个变量,必须先对其进行声明.局部变量在使用之前可以不初始化,系统使用默认的初始值.变量不可以在其作用域之外使用.变量声明语句可以在程序的任何地方,只要在变量使用前就可以5、关于abstract(抽象),下列描述正确的是().声明抽象方法,大括号{ }可有可无.声明抽象方法不可写出大括号{ }.abstract修饰符可修饰字段、方法和类.抽象方法的body部分必须用一对大括号{ }包住6、方法resume()负责恢复以下哪类线程的执行?XXXX.通过调用stop()方法而停止的线程.通过调用sleep()方法而停止的线程.通过调用wait()方法而停止的线程.通过调用suspend()方法而停止的线程7、以下哪个赋值语句是不合法的?().double b = 2.0;.int c = 2;.long d = 2;.float a = 2.0;8、方法resume()负责恢复以下哪类线程的执行?().通过调用stop()方法而停止的线程.通过调用sleep()方法而停止的线程.通过调用suspend()方法而停止的线程.通过调用wait()方法而停止的线程9、欲构造ArrayList类的一个实例,此类继承了List接口,下列正确的代码是().ArraylList myList = new List();.ArrayList myList = new Object();.List myList = new List();.List myList = new ArrayList();10、以下哪个修饰符可用于定义成员常量?().static.final.abstract.No modifier can be used11、关于异常(Exception),下列描述错误的是(). A. 异常可以随便处理,而不是抛给外层的程序进行处理.如果某异常继承RuntimeException,则该异常可以不被声明.异常的基类为Exception,所有异常都必须直接或者间接继承它.异常可以用try{ . . .} catch(Exception e) { . . .}来捕获并进行处理12、执行完以下代码int[ ] x = new int[25];后,以下描述正确的是().x[25]为0.x[24]未定义.x[0]为空.x[24]为013、下列关于修饰符的描述,错误的是().abstract不能与final并列修饰同一个类.abstract类中可以有private的成员。
测试一测试一一、单选题(每小题2分,共50分)1、欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的?A ArrayList myList=new Object();B List myList=new ArrayList();C ArrayList myList=new List();D List myList=new List();2、paint()方法使用哪种类型的参数?A GraphicsB Graphics2DC StringD Color3、指出正确的表达式A byte=128;B Boolean=null;C long l=0xfffL;D double=0.9239d;4、指出下列程序运行的结果1.public class Example{2.String str=new String("good");3.char[]ch={'a','b','c'};4.public static void main(String args[]){5.Example ex=new Example();6.ex.change(ex.str,ex.ch);7.System.out.print(ex.str+" and ");8.Sytem.out.print(ex.ch);9.}10.public void change(String str,char ch[]){11.str="test ok";12.ch[0]='g';13.}14.}A good and abcB good and gbcC test ok and abcD test ok and gbc5、运行下列程序, 会产生什么结果1.public class X extends Thread implements Runable{2.public void run(){3.System.out.println("this is run()");4.}5.public static void main(String args[])6.{7.Thread t=new Thread(new X());8.t.start();9.}10.}A 第一行会产生编译错误B 第六行会产生编译错误C 第六行会产生运行错误D 程序会运行和启动6、要从文件" file.dat"文件中读出第10个字节到变量C中,下列哪个方法适合?A FileInputStream in=new FileInputStream("file.dat"); in.skip(9); int c=in.read();B FileInputStream in=new FileInputStream("file.dat"); in.skip(10); int c=in.read();C FileInputStream in=new FileInputStream("file.dat"); int c=in.read();D RandomAccessFile in=new RandomAccessFile("file.dat"); in.skip(9); int c=in.readByte();7、给出下面代码:1.public class Person{2.static int arr[] = new int[10];3.public static void main(String a[])4.{5.System.out.println(arr[1]);6.}7.}那个语句是正确的?A 编译时将产生错误;B 编译时正确,运行时将产生错误;C BorderLayoutD GridLayout8、指出正确的表达式A byte=128;B Boolean=null;C 输出零;D 输出空。
西电《面向对象程序设计(++)》在线作业一、单选题(共 25 道试题,共 100 分。
)1. ()是面向对象语言中的一种复合数据类型。
它是复合数据类型的超集。
. 复合数据类型. 类. 对象. 成员. 引用正确答案:2. 阅读下面程序int list[]=nw int[10]##for(int I=0##I<=list.lngth##I++) list[I]=I##list[0]的值为( ). 10. 9. 不一定. 出错正确答案:3. 强制挂起线程,而且指定挂起时间的函数是(). slp( ). suspn( ). rsum( ). join( )正确答案:4. 阅读下面程序int list[]=nw int[10]##for(int I=0##I<=list.lngth##I++) list[I]=I##list[0]的值为( ). 10. 9. 不一定. 出错正确答案:5. 设有如下定义:设有如下定义: strutsk{ int; flot; }t; int*p; 若要使p指向t中的成员,则正确的赋值语句为()。
. p=&;. p=t.;. p=&t.;. *p=t.;正确答案:6. 下列对派生类的描述中,错误的是()。
. 一个派生类可以作为另一个派生类的基类. 派生类至少有一个基类. 派生类的缺省继承方式为privt. 派生类只继承了基类的公有成员和受保护成员正确答案:7. 一个pplt程序(). 不用修改就一定可以当作应用程序运行. 怎么修改都不能当作应用程序运行. 可以又作为应用程序运行. 要视操作系统和浏览器而定正确答案:8. 阅读下面程序 lss x3125 { puli stti voi min(String [] rgs) { int i=0## i=i++## Systm.out.println(i)## }}} 现在想先编译再运行该程序,结果是(). 0. 1. 2. 出错正确答案:9. uiolip的()方法可以循环播放声音文件. ply. loop. ontinu. rply正确答案:10. 阅读下面程序 String s="Hllo"##String t=s##t="1234"t代表的字符串为. null. 1234. Hllo. H正确答案:11. int lmnts[]={1,2,3,4,5,6}## int hol[]={10,9,8,7,6,5,4,3,2,1}## 要把lmnts数组中的所有元素复制到hol数组中,因该使用. Systm.rryopy(lmnts,0,hol,0,lmnts.lngth). Systm.rryopy(hol,0,lmnts,0,lmnts.lngth). Systm.rryopy(hol,0,lmnts,0,hol.lngth). Systm.rryopy(lmnts,0,hol,0,hol.lngth)正确答案:12. ++语言中whil循环和o-whil循环的主要区别是()。
一、单选题(每小题2分,共50分)1、MAX_LENGTH是int型public成员变量, 变量值保持为常量100,用简短语句定义这个变量。
A public int MAX_LENGTH=100;B final int MAX_LENGTH=100;C final public int MAX_LENGTH=100;D public final int MAX_LENGTH=100.2、给出下面代码:1.class Parent {2.private String name;3.public Parent(){}4.}5.public class Child extends Parent {6.private String department;7.public Child() {}8.public String getValue(){ return name; }9.public static void main(String arg[]) {10. Parent p = new Parent();11. }12.}那些行将引起错误?A 第3行B 第6行C 第7行D 第8行3、1.Person p;2.Teacher t;3.Student s;4.//p, t and s are all non-null.5.if(t instanceof Person) { s = (Student)t; } 最后一句语句的结果是:A 将构造一个Student对象;B 表达式是合法的;C 表达式是错误的;D 编译时正确,但运行时错误。
4、类Teacher和Student是类Person的子类;1.public class Test {2.int m, n;3.public Test() {}4.public Test(int a) { m=a; }5.public static void main(String arg[]) {6. Test t1,t2;7.int j,k;8. j=0; k=0;9. t1=new Test();10. t2=new Test(j,k);11. }12.}哪行将引起一个编译时错误?A line 3B line 5C line 6D line 105、对于下列代码:1.class Person {2.public void printValue(int i, int j) {//... }3.public void printValue(int i){//... }4.}5.public class Teacher extends Person {6.public void printValue() {//... }7.public void printValue(int i) {//...}8.public static void main(String args[]){9.Person t = new Teacher();10.t.printValue(10);11.}第10行语句将调用哪行语句?A line 2B line 3C line 6D line 76、哪个关键字可以抛出异常?A transientA transientC throwD static7、Main()方法的返回类型是:A intB voidC booleanD static8、System类在哪个包中?A java.utilB java.ioC java.awtD ng9、对于下列代码:1.public class Parent {2.public int addValue( int a, int b) {3.int s;4. s = a+b;5.return s;6. }7.}8.class Child extends Parent {9.}下述哪些方法可以加入类Child?A int addValue( int a, int b ){// do something...}B public void addValue (int a, int b ){// do something...}C public int addValue( int a ){// do something...}D public int addValue( int a, int b )throws MyException {//do something...}10、给出下面代码:1.public class test{2.static int a[] = new a[10];3.public static void main(String args[]) {4. System.out.println(arr[10]);5. }6.}那个选项是正确的?A 编译时将产生错误;B 编译时正确,运行时将产生错误;C 输出零;D 输出空。
专升本《面向对象程序设计》一、(共75题,共150分)1. 的值为()。
(2分)A.1B.2C.3D.4.标准答案:B2. 调用C++的标准函数exit(0)退出程序,将()。
(2分)A.析构全局对象,不析构局部对象B.析构全局对象,析构局部对象C.不析构全局对象,不析构局部对象D.不析构全局对象,析构局部对象.标准答案:A3. 对于定义的值为()。
(2分)A.1B.2C.3D.4.标准答案:A4. 对于定义使用f的正确方法为()。
(2分)A.见图B.见图C.见图D.见图.标准答案:C5. 对于则调用f(x)的返回值为()。
(2分)A.6B.7C.8D.9.标准答案:C6. 对于定义正确的叙述为()。
(2分)A.w引用u,v引用wB.w引用u,v引用uC.w未引用u,v引用wD.w未引用u,v未引用w.标准答案:B7. C++的非静态函数成员()。
(2分)A.可以重载,可以省略参数B.不能重载,不能省略参数C.可以重载,不能省略参数D.不能重载,可以省略参数.标准答案:A 8. 对于定义类F 定义对象将调用哪一个构造函数()。
(2分)A.F::F(int)B.F::F(int, int)C.F::F(int, int, int)D.F::F(int, int, int, int).标准答案:D9. 关于类的静态数据成员和非静态数据成员,哪个叙述正确()。
(2分)A.它们存储在一起,为所有对象共用B.它们不存储在一起,为所有对象共用C.它们存储在一起,而静态数据成员为所有对象共用D.它们不存储在一起,而非静态数据成员为所有对象共用.标准答案:C10. 使用cin>>x>>y输入,正确的说法是()。
(2分)A.cin是输入函数,一次接受两个实参x和yB.cin是输入函数,每次接受一个实参,因此,cin函数被调用两次C.>>是输入函数,一次接受两个实参:cin和要输入的变量如x(或者y)D.>>是输入函数,一次接受三个实参:cin、x、y.标准答案:C11. 关于C++静态数据成员指针和普通非成员指针的叙述哪个正确()。
pulkJ_ic cJ_a.ss Te3t-2 (pul>Xic Tnethod (51■匸 1 口臼 a) {5匸匸ingBuff u 匸 uesuL^ = itevf();±or (int 1c = s ・ length () - 1; k >= 0; k 一一)(匚esult-. append Cs * 匚tia 匸A 匸(k));}return result .tostring();}public static void main(String args [J) ITest-2 t-^st = netr Test£ C ) * String str = rr peaee rr ;iJyst 皀m. out . pr intIn (test . method (str) > ;}}■该程序运行的输岀结果是:2. 、阅读下面的程序:public s Test2 { puh±lc static tliar tnetho d (char ell)(if ( (ell A= ■ A' J 備(ch <= 1Z 1 )return (ctiar ) (ch + ^2); else return ch;>public static void main (5tring[l area) { String s = **口123456769ABCDEF F \ al = rrn ; for (int i ■ s ► length() - 1; i >■ □; i --) si = si + JM thod (g ,charAt (1));Sys tem.out .print Ln (si);该程序运行的输岀结果是:( D )1. A. 0123456789ABCDEF2. rB. ABCDEF0123456789 3.C. 0123456789abcdef i4.D. fedcba98765432101.A. eaceB. PEACEC. ecaepD. ECAEPpuhlic cliss Tescl {piiblie in.t met-hod (int n) { resuLt = 1;(int L = 1; i <= n; i 十十]t result- *= i ; }return rest!丄tjpublic wtatlc void 朗貳匸ting atgs[] ) iTesti 匸亡◎匚=new Te3tl (); int io r 该程序运行的输岀结果是:(D )4、阅读下面程序:[juhlic c±ass Testi {jilbllc int method (iJit n) { int result = 1;tor (int 1 = 1; 1 <= n; i++) { re3u 11 fl = n; } return resu 丄}Bubllo static void itialn (Str ing args [] ){Test 1 test = urn/ Te311(); int s um = 0;Xor (int 1 = 1; J . <= 3; i + + )sum += test.itierhod (i);System, out.printlnf^sum = rr + sum):A. 1 2 2 4 8B. 2 2 4 8 32C. 1 4 4 16 64D. 1 2 6 24 120in.t £or suin[] = new int [6];(lnt 1 = 1; i <= 5* i4j ( swn[ 1]=te^t,inethod (i) System, out » print ^sum[ i]十 r * p,J该程序运行的输岀结果是:( B )1. (J A. sum = 62. c B. sum = 323. C. sum = 644. D. sum = 125、从开始执行到执行结束,小应用程序经历的3个状态分别是:( C )A.初始态、就绪态,结束态1.B.就绪态、运行态,停止态2.3. 二 C.初始态、运行态,停止态4. D.就绪态、运行态,休眠态6、下列关于Java小应用程序(Applet )的说法中,正确的是:( A )1. A. java.applet.Applet 类是所有Java小应用程序的基类B. Java小应用程序不需要编译2.3. C. Java小应用程序也需要main()方法4. 创D. Java小应用程序必须实现ActionListener 接口7、Swing的三个顶层容器分别是:( B )r1. A. JApplet ,JPanel,JWindow2. 上 B. JDialog ,JApplet ,JFrame3. 2 C. JApplet ,JFrame4.冋D. JMenu5. E. JFrame ,JPanel,JtextArea8把容器划分为东、西、南、北、中5个区域的布局管理器是:( D )A. BoxLayout1.2. B. FlowLayout3. 3C. ardLayout4. D. BorderLayout9、下列语句序列执行之后, bl , b2, b3, b4的值分别是:( C )String si = "peace";String s2 = new String(si);String s3 = s2;String s4 = new String( "P EACE");boolean b1 = (s1 == s2);boolean b2 = s1.equals(s2);boolean b3 = (s3 == s2);boolean b4 = s4.equals(s3);A. true , true , false , falseB. false , true , true , trueC. false , true , true , falseD. false , true , false , false10、下列构造String 的语句中,不正确的是:( D )1. R A. String str2 ="";2. B. String str1 = new String(); r3. C. String str4 = "" + 123;4.D. String str3 = new String(123);11、下列关于构造方法的说法中,不正确的是:( A. 构造方法用于创建类的实例 B. 构造方法不可以重载 C. 构造方法不具有返回值类型 D. 构造方法名必须和类名相同1. 2. 3. 4.1. 2. 3. 4.既能作为类的修饰符,也能作为类成员的修饰符的是(A )rA. public rB. extendsC. voidD. static执行完下列语句后,变量 x 的值是( D )int x=7, y=10; switch( x/y ) {case 0: x++; case 7:x*=y;case 14: x+=y; break; default: x%=y;}衣A. 8 3B. 70C. 80衣D. 90以下由for 语句构成的循环的执行次数是:(D )for (int i=0; i<=0; i=i ); 土 A.有语法错,不能执行 °B. 一次也不执行C.执行1次D.无限次12、 1. 2. 3. 4.13、1. 2.3. 4.14、 1. 2. 3.4.15设有定义int i=7;char ch="b"; 下面赋值语句中不正确是:(、1. A. i = ch;2. B. ch = i;3. C. ch = (char)i;4. D. i = (int)ch;16、设有定义int i=80, j=7; double d=80.7; 则下列语句中正确的赋值语句是:( C )1. 12 A. i + j = (int)d;r2. B. i = d;3. C. i = (int)d + j;4. D. j = (int)i - d;17、以下关于Java语言的叙述错误的是:( B )1. G A. Java是最纯粹的面向对象语言,对面向对象方法学的支持也最全面2. 土 B. Java是解释执行的语言,由Java解释器负责将Java源文件解释为机器码执行3. C. Java是平台无关的,即Java程序不用修改就可以在不同类型的计算机平台上运行4. D. Java提供了大量功能丰富的可重用类库,有效减少了编程的工作量18、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序“一次编写,到处运行”的特点:( B )1. A.多线程2. B.与平台无关3. C.面向对象4. D.分布式19、下列选项中,用于声明实现一个接口关键字是:(1. A. interface2. B. implementsC. breakD. new1. 2.3.4.public class InitialOrderTest {//静态变量public static String staticField =" // 变量//静态初始化块3. C. import4. D. abstract 20、 下列不属于 Java 语言关键字的是( 1. A. repeat 2. B. try 21、 下列字符序列中可以作为 Java 语言标识符的是(1. A. true2. B. 123_xyz3. C. x.y4. D. x12322、下列字符序列中不能作为 Java 语言标识符的是(23、 问:阅读下面的Java 代码,写岀打印语句的输岀结果(即类的初始化顺序)。
【D】1、下列Java表达式,错误的是()A. long j = 8888;B. String str = String("bb");C. char c = 74;D. int k = new String("aa");解析:String类型转换成int类型应用Integer.praseInt("123")且字符必须为纯数字【B】2、下列合法的Java标识符是()A. E. +voidB. _blackC. -5D. 12class解析:JAVA标识符不能是数字、符号、特殊符号开头【B】3、关于constructor,下列描述正确的是()A. class中的constructor不可省略B. constructor在一个对象被new时执行C. 一个class只能定义一个constructorD. constructor必须与class同名,但方法不能与class同名解析:constructor(构造器) 构造函数,不定义的情况下在编译代码阶段会自动在当前类增加无参构造函数故A错误一个class(类)可以有多个构造函数,如有一个参数的有多个参数的或无参的都可以故A错误方法可以随意命名,只要不是java保留字故D错误【A】4、以下哪个方法用于定义线程的执行体?()A. F. run()B. main()C. start()D. init()解析:init初始化线程start就绪线程run运行线程main是主体函数【C】5、编译一个定义了两个类和三个方法的Java源文件,产生字节码文件的个数和扩展名是()A. 5个字节码文件,以".java"为扩展名B. 5个字节码文件,以".class"为扩展名C. 2个字节码文件,以".class"为扩展名D. 2个字节码文件,以".java"为扩展名解析:java字节码都是二进制,所以AB错误一个类生成一个字节码文件与方法无关方法是类的成员另外需要注意如果存在内部类有几个内部类则生成几个字节码文件【B】6、下列程序的执行结果是()public class Test {public static void main(String args[]) {try {return;}finally {System.out.println("Finally");}}}A. B. 程序无输出B. 程序输出"Finally"C. 因为缺少catch块,所以编译出错D. 代码可以通过编译,但执行时产生异常解析:无论try catch块执行到什么位置,在程序执行结束前会先执行finally块;故选B【D】7、设有两个类A和B,以下描述中表示B继承自A的是()A. class A implements BB. class A extends BC. class B implements AD. class B extends A解析:集成关键字为extends 故A C错误类1 extends 类2 类1:表示子类类2:表示父类固定搭配所以B错误【B】8、下列程序的运行结果是()import java.awt.*;public class Test extends Frame {public Test(){add(new Label("Hello"));add(new TextField("Hello"));add(new Button("Hello")); //第6行pack();setVisible(true);}public static void main(String[]args){new Test();}}A. 在第6行抛出一个IllegalArgumentException异常B. 显示一个窗口,仅包含一个按钮C. 出现一个空窗口D. 代码编译不通过解析:label是标签无作用button是按钮textField是文本框窗体中有内容C错误代码能正常执行D错误pack();没有抛出异常A错误【B】9、关于Java程序中要使用的一个变量,以下描述不正确的是()A. 在Java程序中要使用一个变量,必须先对其进行声明B. 局部变量在使用之前可以不初始化,系统使用默认的初始值C. 变量不可以在其作用域之外使用D. 变量声明语句可以在程序的任何地方,只要在变量使用前就可以解析:变量使用原则:1、声明变量例:String s;s即为声明的变量引用类型为String2、赋值变量s="bianliang"; 即为初始化【B】10、关于abstract(抽象),下列描述正确的是()A. 声明抽象方法,大括号{ }可有可无B. 声明抽象方法不可写出大括号{ }C. abstract修饰符可修饰字段、方法和类D. 抽象方法的body部分必须用一对大括号{ }包住解析:接口不能有具体内容,抽象方法可以【A】11、()修饰符所定义的方法必须被子类所覆盖。
西南大学培训与继续教育学院课程考试试题卷学期:2020年秋季课程名称【编号】:面向对象程序设计【0837】 A卷:大作业一、(共10小题,3分/题,共30分)1.Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序“一次编写,到处运行”的特点:()A.多线程B.与平台无关C.面向对象D.分布式2.下列字符序列中可以作为Java语言标识符的是:()A.trueB.123_xyzC.x.yD._x1233.下列选项中,用于声明实现一个接口关键字是:()A.interfaceB.implementsC.importD.abstract4.设有定义int i=7;char ch='b'; 下面赋值语句中不正确是:()A.i = ch;B.ch = i;C.ch = (char)i;D.i = (int)ch;5.以下由for 语句构成的循环的执行次数是:()for ( int i = 0; i<=0; i = i ) ;A.有语法错,不能执行B.一次也不执行C.执行1次D.无限次.6.既能作为类的修饰符, 也能作为类成员的修饰符的是()A.publicB.extendsC.voidD.private7.下列构造String的语句中,不正确的是:()A.String str2 = “” ;B.String str1 = new String( )C.String str4 = “” + 123;D.String str3 = new String(123);8.下列语句序列给出了myArr,k与myMethod()的声明。
当调用方法myMethod(myArr,k)之后,存储在myArr和k里的值分别是:()String myArr[] = {“peace”,“love”,“and”};int k = 7;void myMethod(String a[], int m) {;String temp = a[1];a[1] = a[2];a[2] = temp;m = a[2].length();A.{“peace”,“love”,”and”},B.{“peace”,“love”,”and”},C.{“peace”,“and”,”love”},D.{“peace”,“and”,”love”},9.把容器划分为东、西、南、北、中5个区域的布局管理器是:()A.BoxLayoutB.FlowLayoutC.CardLayoutD.BorderLayout10.从开始执行到执行结束,小应用程序经历的3个状态分别是:()A.初始态、就绪态,结束态B.就绪态、运行态,停止态C.初始态、运行态,停止态D.就绪态、运行态,休眠态二、程序分析题(共4小题,各10分,共40分)1.阅读下面的程序,写出程序运行的输出结果。
西南大学培训与继续教育学院课程考试试题卷学期:2020年秋季课程名称【编号】:面向对象程序设计【0837】 A卷考试类别:大作业满分:100分一、单项选择题(共10小题,3分/题,共30分)1.B2.D3.B4.B5.D6.A7.D8.C9.D10.C二、程序分析题(共4小题,每小题各10分,共40分)1.程序运行输出结果是1 2 6 24 1202.程序运行输出结果是fedcba98765432103. (1)Child是Parent的子类(2)super指对象的父类;this指使用它的对象本身(3)这段程序的输出结果是parent child4. (1):Java程序分为Java应用和Java小应用程序;这段程序是Java小应用程序。
(2):界面上包含一个标签,一个按钮和一个文本框;点击按钮后,文本框内显示“好好学习,天天向上”。
(3):ActionListener是动作事件监听器接口;方法actionPerformed()是ActionListener中的方法;其功能是处理applet界面里发生的动作事件。
三、程序设计题(共1小题,共30分)编写一个简单的乘法器,界面如下图所示,在第一个文本框中输入第一个乘数;在第二个文本框中输入第二个乘数;当单击“=”按钮时,在第三个文本框中输出其乘积。
import javax.swing.*;import java.awt.*;import java.awt.event.*;public class Multiply extends JFrame implements ActionListener{private JButton operator = new JButton(\" * \");private JTextField input1 = new JTextField(5);private JTextField input2 = new JTextField(5);private JButton equal = new JButton(\" = \");private JTextField result = new JTextField(5);public Multiply () {Container c = getContentPane();c.setLayout(new FlowLayout());c.add(input1);c.add(operator);c.add(input2);c.add(equal);c.add(result);equal.addActionListener(this);}public void actionPerformed(ActionEvent e) {。
西电《面向对象程序设计(C++)》在线作业
一、单选题(共25 道试题,共100 分。
)
1. 截取当前字符串s从3到末尾的子串的语句是( )
A. s.left(3)
B. s.right(3)
C. s.subString(3)
D. s.subString(3,s.length( ))
正确答案:C
2. 垃圾收集器在Java虚拟机运行时的空闲时,通过检查内存的()来完成内存释放的。
A. 存储的数据大小
B. 存储数据的重要性
C. 在内存的高端还是低端
D. 内存被引用的次数
正确答案:D
3. 使用缓冲区数据流时,数据是以()为单位进入缓冲区的()
A. bit
B. byte
C. 1k
D. 块
正确答案:D
4. Java的输出数据流都是由()继承来的。
A. OutputStream
B. FileOutputStream
C. BufferOutputStream
D. DataOutputStream
正确答案:A
5. 菜单项被选中,将会引发一个()事件
A. MouseEvent
B. ItemEvent
C. ActionEvent
D. 菜单项不支持事件监听程序
正确答案:C
6. 等待另一个线程结束的函数是()
A. sleep( )
B. suspend( )
C. resume( )。
1、阅读下面的程序:该程序运行的输出结果是:( C )1. A. eace2. B. PEACE3. C. ecaep4. D. ECAEP2.、阅读下面的程序:该程序运行的输出结果是:( D )1. A. 0123456789ABCDEF2. B. ABCDEF01234567893. C. 0123456789abcdef4. D. fedcba98765432103、阅读下面的程序:该程序运行的输出结果是:( D )1. A. 1 2 2 4 82. B. 2 2 4 8 323. C. 1 4 4 16 644. D. 1 2 6 24 1204、阅读下面程序:该程序运行的输出结果是:( B )1. A. sum = 62. B. sum = 323. C. sum = 644. D. sum = 125、从开始执行到执行结束,小应用程序经历的3个状态分别是:( C )1. A. 初始态、就绪态,结束态2. B. 就绪态、运行态,停止态3. C. 初始态、运行态,停止态4. D. 就绪态、运行态,休眠态6、下列关于Java小应用程序(Applet)的说法中,正确的是:( A )1. A. java.applet.Applet类是所有Java小应用程序的基类2. B. Java小应用程序不需要编译3. C. Java小应用程序也需要main()方法4. D. Java小应用程序必须实现ActionListener接口7、Swing的三个顶层容器分别是:( B )1. A. JApplet,JPanel,JWindow2. B. JDialog,JApplet,JFrame3. C. JApplet,JFrame4. D. JMenu5. E. JFrame,JPanel,JtextArea8、把容器划分为东、西、南、北、中5个区域的布局管理器是:( D )1. A. BoxLayout2. B. FlowLayout3. C. ardLayout4. D. BorderLayout9、下列语句序列执行之后,b1,b2,b3,b4的值分别是:( C )String s1 = "peace";String s2 = new String(s1);String s3 = s2;String s4 = new String("PEACE");boolean b1 = (s1 == s2);boolean b2 = s1.equals(s2);boolean b3 = (s3 == s2);boolean b4 = s4.equals(s3);1. A. true,true,false,false2. B. false,true,true,true3. C. false,true,true,false4. D. false,true,false,false10、下列构造String的语句中,不正确的是:( D )1. A. String str2 = "" ;2. B. String str1 = new String( );3. C. String str4 = "" + 123;4. D. String str3 = new String(123);11、下列关于构造方法的说法中,不正确的是:( B )1. A. 构造方法用于创建类的实例2. B. 构造方法不可以重载3. C. 构造方法不具有返回值类型4. D. 构造方法名必须和类名相同12、既能作为类的修饰符, 也能作为类成员的修饰符的是( A )1. A. public2. B. extends3. C. void4. D. static13、执行完下列语句后,变量x的值是( D )int x=7, y=10;switch( x/y ) {case 0: x++;case 7: x*=y;case 14: x+=y; break;default: x%=y;}1. A. 82. B. 703. C. 804. D. 9014、以下由for语句构成的循环的执行次数是:( D )for (int i=0; i<=0; i=i) ;1. A. 有语法错,不能执行2. B. 一次也不执行3. C. 执行1次4. D. 无限次15、设有定义 int i=7;char ch="b"; 下面赋值语句中不正确是:( B )1. A. i = ch;2. B. ch = i;3. C. ch = (char)i;4. D. i = (int)ch;16、设有定义 int i=80, j=7; double d=80.7; 则下列语句中正确的赋值语句是:( C )1. A. i + j = (int)d;2. B. i = d;3. C. i = (int)d + j;4. D. j = (int)i - d;17、以下关于Java语言的叙述错误的是:( B )1. A. Java是最纯粹的面向对象语言,对面向对象方法学的支持也最全面2. B. Java是解释执行的语言,由Java解释器负责将Java源文件解释为机器码执行3. C. Java是平台无关的,即Java程序不用修改就可以在不同类型的计算机平台上运行4. D. Java提供了大量功能丰富的可重用类库,有效减少了编程的工作量18、Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序“一次编写,到处运行”的特点:( B )1. A. 多线程2. B. 与平台无关3. C. 面向对象4. D. 分布式19、下列选项中,用于声明实现一个接口关键字是:( B )1. A. interface2. B. implements3. C. import4. D. abstract20、下列不属于Java语言关键字的是( A )1. A. repeat2. B. try3. C. break4. D. new21、下列字符序列中可以作为Java语言标识符的是( D )1. A. true2. B. 123_xyz3. C. x.y4. D. _x12322、下列字符序列中不能作为Java语言标识符的是( C )1. A. abc_1232. B. 圆周率PI3. C. false4. D. _123abc23、问:阅读下面的Java代码,写出打印语句的输出结果(即类的初始化顺序)。
public class InitialOrderTest {// 静态变量public static String staticField = "静态变量";// 变量public String field = "变量";// 静态初始化块static {System.out.println(staticField);System.out.println("静态初始化块");}// 初始化块{System.out.println(field);System.out.println("初始化块");}// 构造器public InitialOrderTest() {System.out.println("构造器");}public static void main(String[] args) {new InitialOrderTest();}}答:输出结果是:静态变量静态初始化块变量初始化块构造器24、问:Math.round(11.5)返回多少? Math.round(-11.5)返回多少?答:Math.round(11.5)返回12,Math.round(-11.5)返回-11。
25、问:下面的Java程序,编译时会报什么错误?import java.io.*;class SuperClass {public void fun() throws IOException {}}class SubClass1 extends SuperClass {public void fun() throws Exception {System.out.println("SubClass::fun()");}}class SubClass2 extends SuperClass {public void fun() throws FileNotFoundException,ArithmeticException {System.out.println("B6::method()");throw new ArithmeticException("被除数为0");}}答:错误之处:SubClass1 中的 fun() 无法覆盖 SuperClass 中的 fun();被覆盖的方法不抛出 ng.Exception public void fun() throws Exception {^26、问:下面的TestStaticMain.java程序能否通过编译?哪条语句会报错?public class TestStaticMain {public static void main(String[] args) {Person p = new Person(10, "wangke");p.print();}class Person {private int ID;private String name;Person(int ID, String name) {this.ID = ID; = name;}public void print() {System.out.println("ID = " + ID);System.out.println("name = " + name);}}}答:不能通过编译。
Person p = new Person(10, "wangke");这一句会报错:无法从静态上下文中引用非静态变量this。
27、问:阅读下面的Java代码,写出打印语句(1)、(2)、(3)的输出结果,并解释原因。
String str1 = new String("wangke");String str2 = new String("wangke");System.out.println(str1 ==str2); // (1)System.out.println(str1.equals(str2));// (2)System.out.println(str1.hashCode()==str2.hashCode()); // (3)答:(1) false。