版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Java面向对象程序设计试题一一、单项选择题D1 、 欲构造 ArrayList 类的一个实例, 此类继承了 List 接口, 下列哪个方法是正确的? ()A ArrayList myList=new Object () ;B List myList=new ArrayList () ;C ArrayList myList=new List () ;D List myList=new List () ;C2、 paint ()方法使用哪种类型的参数?A GraphicsB Graphics2DC StringD ColorD3 、指出正确的表达式()A byte=128;B Boolean=n
2、ull;C long l=0xfffL;D double=0.9239d;4、指出下列程序运行的结果() 。public class ExampleString str=new String("good");charch='a','b','c'public static void main(String args)Example ex=new Example();ex.change(ex.str,ex.ch);System.out.print(ex.str+" and ");Sytem.out.print(
3、ex.ch);public void change(String str,char ch)str="test ok"ch0='g'A good and abcB good and gbcC test ok and abcD test ok and gbcA5 、运行下列程序, 会产生什么结果()public class X extends Thread implements Runablepublic void run()System.out.println("this is run()");public static void main
4、(String args)Thread t=new Thread(new X(); t.start();A 第一行会产生编译错误B 第六行会产生编译错误C 第六行会产生运行错误D 程序会运行和启动A6、要从文件"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&quo
5、t;); 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、 容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变? ()A CardLayoutB FlowLayoutC BorderLayoutD Gr
6、idLayoutC8、给出下面代码:public class Personstatic int arr = new int10;public static void main(String a)System.out.println(arr1);那个语句是正确的? ()A 编译时将产生错误; B 编译时正确,运行时将产生错误; C 输出零; D 输出空。9、哪个关键字可以对对象加互斥锁A transientB synchronizedC serializeD static10、下列哪些语句关于内存回收的说明是正确的? ()A 程序员必须创建一个线程来释放内存;B 内存回收程序负责释放无用内存C
7、内存回收程序允许程序员直接释放内存D 内存回收程序可以在指定的时间释放内存对象二、多项选择题AB1、下面哪些标识符在Java语言中是合法的?()A persons$B TwoUsersC *pointD instanceof F.end-lineBD2 、下面哪些代码片段会产生编译错误?( )A Strings ="Gonewith the wind"String t = " good " Stringk =s +t;B Strings ="Gonewith the wind"String t; t = s3 + "one&
8、quot;C Strings ="Gonewith the wind"String standard = s.toUpperCase();D Strings ="homedirectory" String t = s - "directory".AD3 、下面哪些赋值语句是错误的?( )A float f = 11.1;B double d = 5.3E12;C char c = 'r'D byte bb = 433;4、给定下面的代码片段:public void Test() try method();System.
9、out.println("Hello World");catch (ArrayIndexOutOfBoundsException e)System.out.println("Exception?");catch(Exception e)System.out.println("Exception1");finallySystem.out.println("Thank you!");如果函数 method 正常运行并返回,会显示下面的哪些信息? ()A Hello WorldB Exception C Exceptio
10、nl D Thank you!ACD5、下列哪些语句是正确的?()A int a=new int3;B int a加1,3,2,3,4,1,2;C String s=new String2口;D String s口尸"can",T,"help","you"BC6、下面哪些语句能够正确地生成 5个空字符串? ()A String a 口 = new String 5; for (int i = 0; i < 5; ai+="");B String a 口 = "", ""
11、, "", "", ""C String a 5;D String 5 a;BC7、下面关于Java代码安全的说法哪些是正确的?()A程序执行过程中需要的所有类都是通过字节码校验程序装入的。B代码的运行是由Java运行环境中的解释器完成的。C在运行时,字节码要经过装入,校验之后,才能在解释器中执行。D在缺省的安全配置条件下, Java Applet不能访问任何本地资源。AC8、下列方法属于java.lang.Math类的有(方法名相同即可):()A random()B abs()C sqrt()D sin()CD9、下列表达式哪些是正
12、确的: ()A byte=340;B Boolean=1;C long l=-2;D double=0.9239d;BC10、下面的说法正确的是: ()A Java语言里的线程不是对象B Applet不需要 main方法C Java语言的对象都是java.lang.Object的子类D double是Java语言的合法标识符三、填空题1、执行下列代码后的结果是什么?int x,a=2,b=3,c=4; x=+a+b+c+;2、包包含了 Collection的接口和类的 API。3、main方法的声明格式包括4、下列程序中构造了一个SET并且调用其方法add(),输出结果是 public cla
13、ss Apublic int hashCode () return 1 ; public Boolean equals (Object b) return truepublic static void main (String args) Set set=new HashSet ();set.add(new A();set.add(new A();set.add(new A();System.out.println(set.size(); 5、下列程序的运行结果是 。 class Aclass Dogprivate String name;private int age; public int
14、 step;Dog(String s,int a) name=s;age=a; step=0; public void run(Dog fast) fast.step+; public static void main (String args) A a=new A();Dog d=a.new Dog("Tom",3);d.step=25;d.run(d);System.out.println(d.step); 四、编程题1、编写一个输出"Hello World !"的程序,用两种方式实现( Application、Applet)。2、打印输出10行杨晖
15、三角形3、有下面一段Server段程序,目的是能够同时服务多个客户,客户的请求是一句话(一个 String)。如果这个请求的内容是字符串"plain”的话,服务器仅将"hello"字符串返回给用户。否则将用户的话追加到当前目录的文本文件Memo.txt中(路径为"Memo.txt"),并向用户返 回 "OK" 。 注意 Server 并发的处理多用户, Memo.txt 被共享, 要求不能出现数据不一致。 Server的程序如下文件Server.java:public class Serverpublic static vo
16、id main(String args)MemoController memoController = new MemoController(); tryServerSocket ss = new ServerSocket(1999);while (true)Socket s = ss.accept(); tryUserThread t = new UserThread(s, memoController);t.start();catch(Exception e) e.printStackTrace(); catch(Exception e) e.printStackTrace();final
17、ly memoController.close(); 类 UserThread 程序如下:文件 UserThread.java :public class UserThread extends Thread Socket s;MemoController memo;public UserThread (Socket s, MemoController memo) this.s = s;this.memo = memo;public void run() tryBufferedReader br = new BufferedReader(new InputStreamReader(s.getIn
18、putStream();PrintWriter pw = new PrintWriter(newOutputStreamWriter(s.getOutputStream();String req = br.readLine();if (req.equals("plain") pw.println("hello");elsememo.append(req);pw.println("OK");pw.flush();pw.close();br.close();s.close();catch(Exception e) e.printStack
19、Trace();请根据题目的要求和现有的 Server.java, UserThread.java 的程序完成类MemoController.java的程序。4、用输入/ 输出写一个程序,让用户输入一些姓名和电话号码。每一个姓名和号码将加在文件里。 用户通过点 "Done" 按钮来告诉系统整个列表已输入完毕。 如果用户输入完整个列表,程序将创建一个输出文件并显示或打印出来。 格式如: 555-1212,Tom 123-456-7890,Peggy L.234-5678,Marc 234-5678,Ron 876-4321,Beth&Brian 5.
20、70,Jean-Marc5、编写一个应用程序,创建三个线程分别显示各自的时间。第一题 :public static void main (String args)String fileNames = "abc.txt", "bcd.exe","cde.exe","def.dat","efg.exe" ;for (String fileName : fileNames) if (fileName.endsWith(".exe") System.out.print(fileNam
21、e.substring(0,fileName.lastIndexOf(".exe")+" "); 判断是否已 ".exe" 结尾截取 0-3 的字符串 , 不包含 4获取 ".exe" 最后一次出现的位置fileName.endsWith(".exe") substring(0,4) lastIndexOf(".exe") 答案 :bcd cde efg第二题 :public static void go(Long n) System.out.println("Lo
22、ng");public static void go(Short n) System.out.println("Short");public static void go(int n) System.out.println("int");public static void main(String args) short y = 6;long z = 7;go(y);go(z);虽然 y 是 short 型的,但是编译器把它转换为 int 型答案 :int Long第三题 :public static void main(String args
23、)String test = "Test A. Test B. Test C."String regex = ".s*"String result = test.split(regex); for(String s : result)System.out.print(s + " ");答案 : Test A Test B Test C第四题 :public class AAprivate Long userId;private String nickName;public Long getUserId() return userId;
24、public void setUserId(Long userId) this.userId = userId;public String getNickName() return nickName;public void setNickName(String nickName) this.nickName = nickName;public static void main(String args)AA m1=new AA();m1.setUserId(new Long(100001);m1.setNickName("mick");AA m2=new AA();m2.se
25、tUserId(new Long(100001);m2.setNickName("mick");System.out.println(m1=m2);System.out.println(m1.equals(m2);equals 方法返回值也是return m1=m2答案 :false false第五题运行下列代码,输出为 false 的是: () 。A.String st1 = "abc"System.out.println("abc" = st1);st2 ="abc"System.out.println(st2
26、.equals(newString("abc");C.Integer i = 100; System.out.println(100 = i);D.ArrayList list = new ArrayList();System.out.println(list.contains(null);答案: D第六题public interface CookieCookie cookie=new Cart (" 小面包 "," 盼盼 ");public class Cart implements Cookieprivate String nam
27、e;private String production;public Cart(String name,String production)=name;duction=production;public void smell()cookie =new Cart(" 蛋黄派 "," 达利园 "); final 要求属性不可更改cookie =new Cart(" 蛋黄派 "," 达利园 "); 这个修改了cookie 的地址,所以报错第七题( 多选 ) 请看下列代码:public a
28、bstract class Shape int x;int y;public abstract void draw();public void setAnchor(int x, int y) this.x = x; this.y = y;下列选项中能正确使用 Shape 类的是:A.public class Circle implements Shape private int radius; B.public abstract class Circle extends Shape private int radius; C.public class Circle extends Shape
29、private int radius; public void draw(); D.public class Circle extends Shape private int radius;public void draw() 抽象类不可以实例化 , 如果一个类继承了抽象类, 必须重新其抽象方法答案: BD第八题( 多选 ) 请看下列代码:package com.tarena;public class Geodetics public static final double DIAMETER = 12756.32;访问静态常量DIAMETER的方式正确的是:A.import com.taren
30、a.Geodetics;public class TerraCarta public double halfway()return Geodetics.DIAMETER/2.0;B.import com.tarena.Geodetics;public class TerraCarta public double halfway()return DIAMETER/2.0;C.import com.tarena;public class TerraCarta public double halfway()return Geodetics.DIAMETER/2.0;D.import com.tare
31、na.*;public class TerraCarta public double halfway()return Geodetics.DIAMETER/2.0;答案: AD第九题( 多选 ) 在 Java 语言中,下列说法正确的是()答案: ACD第十题( 多选 ) 在<插入代码>处,填入下列代码编译正确的是: public void foo(int x) <插入代码 > A.foreach(int z : x) System.out.println(z);B.for(int z : x) System.out.println(z);C.while( x.hasNe
32、xt() System.out.println( x.next();D.for( int i=0; i< x.length; i+ ) System.out.println(xi);答案: BD第十一题( 多选 ) 查看如下代码:class A protected int method (int a, int b) return 0; 下列选项中,可以在A 的子类中使用的是() 。A.public int method (int a, int b) return 0; B.private int method(int a, int b) return 0; C.private int m
33、ethod(int a, long b) return 0; D.public short method(int a, int b) return 0; A:重写A类中的方法 C :重载A类中的方法 答案: AC第十二题( 多选 ) 在 Java 语言中,下列说法正确的是: () 。A.StringBuffer 和 StringBuilder 的区别在于: StringBuffer 是线程安全的 而StringBuilder 不是。B.String 是不可变对象,而StringBuffer 中封装的字符串数据是可以动态改变的C. 判断两个 StringBuilder 对象的字符序列是否相同,可
34、以调用其equlas 方法进行比较。D.String 的重写了 equals 方法,重写的逻辑是:字符序列相同的 String 对象 equals 方法返回 true 。 答案: ABD第十三题( 不区分大小写 )( 多选 ) 题目代码的功能为:输出每个字符在一个字符串中出现的次数String str = "ewrwqFrewqfsadfdsfdsfs"str=str.toLowerCase();int max_length = 0;while (str.length() > 0) 插入代码A. int length = str.length();char first
35、=str.charAt(0);String strNew = str.replaceAll(String.valueOf(first), ""); if (length>strNew.length() max_length = length - strNew.length();System.out.println(first+":"+max_length);B. int length = str.length();char first=str.charAt(0);String strNew = str.replaceAll(String.value
36、Of(first), "");if (length>strNew.length() max_length = length - strNew.length();str = strNew;System.out.println(first+":"+max_length);C. int length = str.length();String first = str.substring(0, 1);String strNew = str.replaceAll(first, "");if (length>strNew.length
37、() max_length = length - strNew.length();str = strNew;System.out.println(first+":"+max_length);D. int length = str.length();String first = str.substring(0, 1);String strNew = str.replaceAll(first, "");if (length>strNew.length() strNew.length();max_length=lengthSystem.out.print
38、ln(first+":"+max_length);答案: BC第十四题( 多选 ) 下面的方法属于StringBuffer 的是: () 。答案: BCD第十五题( 多选 ) 请看下列代码:public class Old public static Object get(List list) return list.get(0);以下选项调用 get 方法,能编译通过的是:A.Object o = Old.get(new LinkedList();B.Object o = Old.get(new LinkedList<?>();C.String s = Old
39、.get(new LinkedList<String>();D.String s = (String)Old.get(new LinkedList<String>();答案: AD1. 重写必须继承,重载不用。2. 重写的方法名,参数数目相同,参数类型兼容,重载的方法名相同,参数列表不同。3. 重写的方法修饰符大于等于父类的方法,重载和修饰符无关。4. 重写不可以抛出父类没有抛出的一般异常,可以抛出运行时异常public void main (int x)int d = 'a'+'b'+'c'对的第十六题(单选题)从下面四
40、段(A, B, C, D)代码中选择出正确的代码段()(A)abstract class Name private String name;public abstract boolean isStupidName(String name) (B)public class Something void doSomething () private String s = ""int l = s.length();(C)public class Something public static void main(String args) Other o = new Other()
41、; new Something().addOne(o);public void addOne(final Other o) o.i+;class Other public int i;(D)public class Something public int addOne(final int x) return +x;A.抽象方法不能有方法体。B.方法中定义的是局部变量,不能用类成员变量修饰符private 。 D final 修饰为常量,常量的值不能被改变。第十七题( 单选题 ) 下列关于 interface 的说法正确的是( )(A)interface (B)interface (C)int
42、erface (D)interfaceA. 接口中不可以有中可以有 private 方法中可以有 final 方法中可以有 function 实现可以继承其他interfaceprivate 的方法。 B 接口中不可以有final接口中的方法默认是 public abstract的。C.接口中的方法不可以有实现第十八题( 单选题 ) 在创建对象时,必须( )(A) 先声明对象,然后才能使用对象(B) 先声明对象,为对象分配内存空间,然后才能使用对象(C) 先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象(D) 上述说法都对对象是先声明,声明后会在给对象在内存里开辟空间,之后初始化
43、,再进行使用答案: C第十九题( 单选题 ) 关于以下说法正确的是( )1 class StaticStuff2 3 static int x=10;4 static x+=5;5 public static void main(String args)6 7 System.out.println("x=" + x);8 9 static x/=3;10 .(A)4 行与 9 行不能通过编译,因为缺少方法名和返回类型(B)9 行不能通过编译,因为只能有一个静态初始化器(C) 编译通过,执行结果为:x=5(D) 编译通过,执行结果为:x=3静态块是类加载的时候就会被执行到的,
44、静态执行顺序是按照在类中出现 的先后顺序执行。答案: D第二十题( 单选题 ) 下列哪种说法是正确的( )(A) 本类中实例方法可以调用其他类中所有实例方法(B) 本类中实例方法可以调用其他类中类方法(C) 本类中实例方法可以直接通过方法名调用其他类的实例方法(D) 本类中实例方法可以直接通过方法名调用本类中其他实例方法A. 本类实例方法不可以调用其他类的私有实例方法。 B. 本类实例方法不可以调用其他类的私有类方法。C.本类实例方法不可以直接通过方法名调用其他类的实例方法。答案: D第二十一题( 多选题 ) 在 JAVA 接口中可以定义( ) 。(A) 静态方法(B) 常量(C) 构造方法(
45、D) 抽象方法接口中只能定义常量和抽象方法。答案:CD第二十二题( 多选题 ) 下面选项中哪两个可以在A 的子类中使用( )class A protected int method1 (int a, int b) return 0;(A)public int method1(int a, int b) return 0; (B)private int method1(int a, int b) return 0; (C)private int method1(int a, long b) return 0; (D)public short method1(int a, int b) retur
46、n 0; B 子类重写父类的方法,访问权限不能降低;C 属于重载 ;D 子类重写父类的方法如果返回值类型是基本类型的话,要求相同。答案: AC第二十三题( 单选题 ) 在下面程序的第7 行补充上下列哪个方法, 会导致在编译过程中发生错误( )1) class Super2) public float getNum()3) return 3.0f;4) 5) 6) public class Sub extends Super7) / TODO .8) (A)public float getNum()retun 4.0f;(B)public void getNum()(C)public void
47、getNum(double d)(D)public double getNum(float d)retun 4.0f;方法重写、 重载的问题。 重写要求方法签名 ( 方法名+形参列表) 完全相同, 返回值类型如果是基本类型或无返回值时必须一致。重载要求方法名相同且参数列表必须不同,与返回值类型无关。答案: B第二十四题( 单选题 ) 关于以下程序代码的说明正确的是( )1 class HasStatic2 private static int x=100;3 public static void main(String args )4 HasStatic hs1=new HasStatic()
48、;5 hs1.x+;6 HasStatic hs2=new HasStatic();7 hs2.x+;8 hs1=new HasStatic();9 hs1.x+;10 HasStatic.x-;11 System.out.println("x="+x);12 13 (A)5 行不能通过编译,因为引用了私有静态变量(B)10 行不能通过编译,因为 x 是私有静态变量(C) 程序通过编译,输出结果为:x=103(D) 程序通过编译,输出结果为:x=102静态变量是所有对象所共享的,所以上述代码中的几个对象操作是同一静态变量x ,静态变量可以通过类名调用。答案: D第二十五题(
49、 单选题 ) 栈是一种( )(A) 存取受限的线性结构(B) 存取不受限的线性结构(C) 存取受限的非线性结构(D) 存取不受限的非线性结构栈( stack )在计算机科学中是限定仅在表尾进行插入或删除操作的线性表。答案: A第二十六题( 单选题 ) 请问,以下哪些修饰符不能用于顶层类?(A)public(B)private(C)abstract(D)final对于顶层类( 外部类 ) 来说,只有两种修饰符: public 和默认 (default) 。因为外部类的上一单元是包,所以外部类只有两个作用域:同包,任何位置。因此,只需要两种控制权限:包控制权限和公开访问权限,也就对应两种控制修饰符: public 和默认(default) 。 但是 private 可以修饰 class 的,只不过该类不能使顶层类,可以是内部类内部类的上一级是外部类,那么对应的有四种访问控制修饰符:本类(private) ,同包 (
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年能源政策与产业结构调整考试及答案
- 中行面试题目及参考答案
- (正式版)DB36∕T 1590-2022 《红壤区坡面径流小区径流泥沙监测技术规范》
- 《我的伯父鲁迅先生》教学设计
- 2026年智能交通中的自动化控制系统应用研究
- 2026年碳足迹与社会消费的关联性研究
- 组织工程支架的力学行为
- 2026幼儿园学习能力培养课件
- 绿色农业发展研究
- 食品安全与健康饮食行业承诺书范文4篇
- 数据变化趋势的刻画课件2025-2026学年冀教版数学八年级下册
- 教育强国建设三年行动计划(2025-2027年)
- 20S515 钢筋混凝土及砖砌排水检查井
- 2026季华实验室测试中心招聘5人(广东)笔试参考题库及答案解析
- 2026年吉林四平市高职单招英语试题含答案
- 2026年山区复杂地形无人机起降点选址技术指南
- 2026届苏锡常镇高三语文一模作文评分细则及标杆文:卓越源于有目的、有反馈的重复
- 《必背60题》 区域经济学26届考研复试高频面试题包含详细解答
- 律所反洗钱内部控制制度
- 2026春人教版(新教材)小学美术二年级下册《天然的形态》教学设计
- 软件系统平台运营方案
评论
0/150
提交评论