极客营9营考试题目.docx
《极客营9营考试题目.docx》由会员分享,可在线阅读,更多相关《极客营9营考试题目.docx(10页珍藏版)》请在冰豆网上搜索。
![极客营9营考试题目.docx](https://file1.bdocx.com/fileroot1/2023-2/6/7caf63ca-9b99-4a6e-abb2-0ff216195fac/7caf63ca-9b99-4a6e-abb2-0ff216195fac1.gif)
极客营9营考试题目
极客营9营考试题目
极客营九营第三周考试(100分)
单选题(15题,每题2分,共30分):
1. 在Java中,( )类可用于创建链表数据结构的对象
A:
LinkedList
B:
ArrayList
C:
Collection
D:
HashMap
2.Java中,以下( )接口以键_值对的方式存储对象
A:
java.util.Collection
B:
java.util.Map
C:
java.util.List
D:
java.util.Set
3. Java中的集合类包括ArrayList、LinkedList、HashMap等类,下列关于集合类描述错误的是( )。
A:
ArrayList和LinkedList均实现了List接口
B:
ArrayList的访问速度比LinkedList快
C:
添加和删除元素时,ArrayList的表现更佳
D:
HashMap实现Map接口,它允许任何类型的键和值对象,并允许将null用作键或值
4.Java语言中,负责并发管理的机制是()
A:
垃圾回收
B:
虚拟机
C:
代码安全
D:
多线程
5. 欲构造 ArrayList 类的一个实例,下列哪个方法是正确的
A:
ArrayListmyList=newObject();
B:
ListmyList=newArrayList();
C:
ArrayListmyList=newList();
D:
ListmyList=newList();
6. Given:
classperson{
intaddvalue(inta,intb)
{ints;s=a+b;returns; }
}
classchildextendsperson{}
若要在child类中对addvalue方法进行重写,下面对于child类中的addvalue方法头的描述哪个是正确的:
A:
intaddvalue(intI,intj)
B:
voidaddvalue()
C:
voidaddvalue(doublei)
D:
intaddvalue(inta)
7.在使用super和this关键字时,以下描述正确的是()
A:
在子类构造方法中使用super()显示调用父类的构造方法,super()必须写在子类构造方法的第一行,否则编译不通过
B:
super()和this()不一定要放在构造方法内第一行
C:
this()和super()可以同时出现在一个构造函数中
D:
this()和super()可以在static环境中使用,包括static方法和static语句块
8. 以下关于final关键字说法错误的是( )
A:
final是java中的修饰符,可以修饰类、接口、抽象类、方法和属性
B:
final修饰的类肯定不能被继承
C:
final修饰的方法不能被重写
D:
final修饰的变量不允许被再次赋值
9.以下代码运行输出是()
publicclassPerson{
privateStringname=”Person”;
intage=0;
}
publicclassChildextendsPerson{
publicStringgrade;
publicstaticvoidmain(String[]args){
Personp=newChild();
System.out.println(p.name);
}
}
A:
输出:
Person
B:
没有输出
C:
编译出错
D:
运行出错
10.下以下程序的运行结果是()
classPerson{
publicPerson(){
System.out.println(“thisisaPerson”);
}
}
publicclassTeacherextendsPerson{
privateStringname=”tom”;
publicTeacher(){
System.out.println(“thisisateacher”);
super();
}
publicstaticvoidmain(String[]args){
Teacherteacher=newTeacher();
System.out.println(this.name);
}
}
A:
thisisaPersonthisisateachertom
B:
thisisateacherthisisaPersontom
C:
运行出错
D:
编译有两处错误
11. 下面关于变量及其范围的陈述哪些是错的。
()
A:
对象变量是类的成员变量。
B:
对象变量用关键字static声明。
C:
在方法中定义的局部变量在该方法被执行时创建
D:
局部变量在使用前必须被初始化。
12. 以下哪个表达式是不合法的( )
A:
Stringx=”Hello”;inty=9;x+=y;
B:
Stringx=”Hello”;inty=9;if(x==y){}
C:
Stringx=”Hello”;inty=9;x=x+y;
D:
Stringx=null;booleany=(x!
=null)&&(x.length()>0)
13.下列代码中,将引起一个编译错误的行是 ( )。
1)public class Test{
2) int m,n;
3) public Test() {}
4) public Test(int a) {m=a;}
5) public static void main(String args[]){
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:
第3行
B:
第5行
C:
第6行
D:
第10行
14.下列哪个类声明是正确的?
( )。
A:
abstractfinalclassHI{•••}
B:
abstractprivatemove(){•••}
C:
protectedprivatenumber;
D:
publicabstractclassCar{•••}
15. Given:
publicclassTest{
publicstaticvoidstringReplace(Stringtext){
text=text.replace('j','L');
}
publicstaticvoidbufferReplace(StringBuffertext){
text=text.append("c");
}
publicstaticvoidmain(Stringargs[]){
StringtextString=newString("java");
StringBuffertextBuffer=newStringBuffer("java");
stringReplace(textString);
bufferReplace(textBuffer);
System.out.println(textString+textBuffer);
}
}下述正确的是:
A:
编译并运行输出Lavajavac
B:
编译并运行输出javajava
C:
编译并运行输出javajavac
D:
编译并运行输出Lavajava
不定向选择题(5题,每题3分,共15分):
1.在Java中,关于HashMap类的描述,以下选项正确的是( )
A:
HashMap使用键/值得形式保存数据
B:
HashMap能够保证其中元素的顺序
C:
HashMap允许将null用作键
D:
HashMap允许将null用作值
2. interfaceData{publicvoidload();}
abstractclassInfo{publicabstractvoidload();}
下面哪个类是对上边的接口和抽象类的继承是用正确的?
()
A:
publicclassEmployeeextendsInfoimplementsData{publicvoidload(){/*dosomething*/}}
B:
publicclassEmployeeimplementsInfoextendsData{publicvoidload(){/*dosomething*/}}
C:
publicclassEmployeeextendsInfoimplementsData{publicvoidload(){/*dosomething*/}publicvoidInfo.load(){/*dosomething*/}}
D:
publicabstractclassEmployeeimplementsInfoextendsData{}
E:
publicclassEmployeeimplementsInfoextendsData{publicvoidload(){/*dosomething*/}publicvoidInfo.load(){/*dosomething*/}}
F:
publicclassEmployeeextendsInfoimplementsData{publicvoidData.load(){/*dosomething*/}publicvoidInfo.load(){/*dosomething*/}
3. 编译并运行下面的程序,下面描述正确的有( ).
publicclassA{
publicstaticvoidmain(String[]args) {
Aa=newB();
a.test();
}
voidtest() {
System.out.print("A");
}
}
classBextendsA{
voidtest(){
super.test();
System.out.println("B");
}
}
A:
子类B定义了与父类A中同名的方法test,java中称为方法的覆盖。
B:
代码可以编译运行,并输出结果:
AB。
C:
代码可以编译运行,并输出结果:
A。
D:
子类B定义了与父类A中同名的方法test,java中称为方法的重载。
4.根据下面的代码,
Strings=null;
会抛出NullPointerException异常的有( )
A:
if((s!
=null)&(s.length()>0))
B:
if((s!
=null)&&(s.length()>0))
C:
if((s==null)|(s.length()==0))
D:
if((s==null)||(s.length()==0))
5.下列说法错误的是:
A:
ArrayList是有序的,LinkedList是无序的
B:
Set有两种移除单个数据的方法:
remove(intindex),remove(Objecto)
C:
map.entrySet()可以获取所有的映射关系
D:
map.keySet()可以获取所有的key
程序阅读(2题,共10分):
ps:
运行结果必须完全按照输出语句,除去换行可以用空格代替外不允许简写,多写或者少写均不给分。
1.下列程序运行结果是:
publicclassA{
publicstaticvoidmain(String[]args){
Stringstr1="123456";
Stringstr2=str1.replace('3','3');
Stringstr3="123456".replace("3","3");
System.out.println(str1==str2);
System.out.println(str1==str3);
}
}
2.下列程序运行结果是:
publicclassPerson{
Stringname;
intage;
publicPerson(Stringname,intage){
}
@Override
publicStringtoString(){
returnname+","+age;
}
publicstaticvoidmain(String[]args){
Personperson=newPerson("小明",16);
System.out.println(person);
}
}
简答题(5题,共25分):
1.简单描述String和StringBuffer有什么异同?
2.abstractclassName{
privateStringname;
publicabstractbooleanisStupidName(Stringname){}
}
这有何错误?
为什么?
3.ArrayList和Vector的区别
4.简单描述java集合中set、list、map各有什么特点
5.请写出java中的基本数据类型和直接量
编程题(2题,共20分):
1.输入2个数m,n,比m=3,n=5,计算3+33+333+3333+33333
2.Strings=“helloHellohelloHelloHello”;
1)求String的长度(1分)
2)把该字符串中的hello全部替换成happy(1分)
3)截取5-10的字符串(1分)
4)判断从编程打印出”o”出现的次数(2分)
5)对这个字符串进行排序(A-Z然后a-z)(5分)