答案:
BD
第十一题
(多选)查看如下代码:
classA{protectedintmethod(inta,intb){return0;}}
下列选项中,可以在A的子类中使用的是()。
A.publicintmethod(inta,intb){return0;}
B.privateintmethod(inta,intb){return0;}
C.privateintmethod(inta,longb){return0;}
D.publicshortmethod(inta,intb){return0;}
A:
重写A类中的方法C:
重载A类中的方法
答案:
AC
第十二题
(多选)在Java语言中,下列说确的是:
()。
A.StringBuffer和StringBuilder的区别在于:
StringBuffer是线程安全的而StringBuilder不是。
B.String是不可变对象,而StringBuffer中封装的字符串数据是可以动态改变的
C.判断两个StringBuilder对象的字符序列是否相同,可以调用其equlas方法进行比较。
D.String的重写了equals方法,重写的逻辑是:
字符序列相同的String对象equals方法返回true。
答案:
ABD
第十三题
(多选)题目代码的功能为:
输出每个字符在一个字符串中出现的次数(不区分大小写)。
Stringstr="ewrwqFrewqfsadfdsfdsfs";
str=str.toLowerCase();
intmax_length=0;
while(str.length()>0){
《插入代码》
}
A.intlength=str.length();
charfirst=str.charAt(0);
StringstrNew=str.replaceAll(String.valueOf(first),"");
if(length>strNew.length()){
max_length=length-strNew.length();
System.out.println(first+":
"+max_length);
}
B.intlength=str.length();
charfirst=str.charAt(0);
StringstrNew=str.replaceAll(String.valueOf(first),"");
if(length>strNew.length()){
max_length=length-strNew.length();
str=strNew;
System.out.println(first+":
"+max_length);
}
C.intlength=str.length();
Stringfirst=str.substring(0,1);
StringstrNew=str.replaceAll(first,"");
if(length>strNew.length()){
max_length=length-strNew.length();
str=strNew;
System.out.println(first+":
"+max_length);
}
D.intlength=str.length();
Stringfirst=str.substring(0,1);
StringstrNew=str.replaceAll(first,"");
if(length>strNew.length()){
max_length=length-strNew.length();System.out.println(first+":
"+max_length);
}
答案:
BC
第十四题
(多选)下面的方法属于StringBuffer的是:
()。
A.size
B.insert
C.delete
D.length
答案:
BCD
第十五题
(多选)请看下列代码:
publicclassOld{
publicstaticObjectget(Listlist){
returnlist.get(0);
}
}
以下选项调用get方法,能编译通过的是:
A.Objecto=Old.get(newLinkedList());
B.Objecto=Old.get(newLinkedList
>());
C.Strings=Old.get(newLinkedList());
D.Strings=(String)Old.get(newLinkedList());
答案:
AD
1.重写必须继承,重载不用。
2.重写的方法名,参数数目相同,参数类型兼容,重载的方法名相同,参数列表不同。
3.重写的方法修饰符大于等于父类的方法,重载和修饰符无关。
4.重写不可以抛出父类没有抛出的一般异常,可以抛出运行时异常
publicvoidmain(intx){}
intd='a'+'b'+'c';对的
第十六题
(单选题)从下面四段(A,B,C,D)代码中选择出正确的代码段()
(A)abstractclassName{
privateStringname;
publicabstractbooleanisStupidName(Stringname){}
}
(B)publicclassSomething{
voiddoSomething(){
privateStrings="";
intl=s.length();
}
}
(C)publicclassSomething{
publicstaticvoidmain(String[]args){
Othero=newOther();
newSomething().addOne(o);
}
publicvoidaddOne(finalOthero){
o.i++;
}
}
classOther{
publicinti;
}
(D)publicclassSomething{
publicintaddOne(finalintx){
return++x;
}
}
A.抽象方法不能有方法体。
B.方法中定义的是局部变量,不能用类成员变量修饰符private。
D.final修饰为常量,常量的值不能被改变。
第十七题
(单选题)下列关于interface的说确的是()
(A)interface中可以有private方法
(B)interface中可以有final方法
(C)interface中可以有function实现
(D)interface可以继承其他interface
A.接口中不可以有private的方法。
B.接口中不可以有final的方法接口中的方法默认是publicabstract的。
C.接口中的方法不可以有实现
第十八题
(单选题)在创建对象时,必须()
(A)先声明对象,然后才能使用对象
(B)先声明对象,为对象分配存空间,然后才能使用对象
(C)先声明对象,为对象分配存空间,对对象初始化,然后才能使用对象
(D)上述说法都对
对象是先声明,声明后会在给对象在存里开辟空间,之后初始化,再进行使用
答案:
C
第十九题
(单选题)关于以下说确的是()
1.classStaticStuff
2.{
3.staticintx=10;
4.static{x+=5;}
5.publicstaticvoidmain(Stringargs[])
6.{
7.System.out.println("x="+x);
8.}
9.static{x/=3;}
10.}
(A)4行与9行不能通过编译,因为缺少方法名和返回类型
(B)9行不能通过编译,因为只能有一个静态初始化器
(C)编译通过,执行结果为:
x=5
(D)编译通过,执行结果为:
x=3
静态块是类加载的时候就会被执行到的,静态执行顺序是按照在类中出现的先后顺序执行。
答案:
D
第二十题
(单选题)下列哪种说法是正确的()
(A)本类中实例方法可以调用其他类中所有实例方法
(B)本类中实例方法可以调用其他类中类方法
(C)本类中实例方法可以直接通过方法名调用其他类的实例方法
(D)本类中实例方法可以直接通过方法名调用本类中其他实例方法
A.本类实例方法不可以调用其他类的私有实例方法。
B.本类实例方法不可以调用其他类的私有类方法。
C.本类实例方法不可以直接通过方法名调用其他类的实例方法。
答案:
D
第二十一题
(多选题)在JAVA接口中可以定义()。
(A)静态方法
(B)常量
(C)构造方法
(D)抽象方法
接口中只能定义常量和抽象方法。
答案:
CD
第二十二题
(多选题)下面选项中哪两个可以在A的子类中使用()
classA{
protectedintmethod1(inta,intb){
return0;
}
}
(A)publicintmethod1(inta,intb){return0;}
(B)privateintmethod1(inta,intb){return0;}
(C)privateintmethod1(inta,longb){return0;}
(D)publicshortmethod1(inta,intb){return0;}
B子类重写父类的方法,访问权限不能降低;C属于重载;D子类重写父类的方法如果返回值类型是基本类型的话,要求相同。
答案:
AC
第二十三题
(单选题)在下面程序的第7行补充上下列哪个方法,会导致在编译过程中发生错误()1)classSuper{
2)publicfloatgetNum(){
3)return3.0f;
4)}
5)}
6)publicclassSubextendsSuper{
7)//TODO...
8)}
(A)publicfloatgetNum(){retun4.0f;}
(B)publicvoidgetNum(){}
(C)publicvoidgetNum(doubled){}
(D)publicdoublegetNum(floatd){retun4.0f;}
方法重写、重载的问题。
重写要求方法签名(方法名+形参列表)完全相同,返回值类型如果是基本类型或无返回值时必须一致。
重载要求方法名相同且参数列表必须不同,与返回值类型无关。
答案:
B
第二十四题
(单选题)关于以下程序代码的说明正确的是()
1.classHasStatic{
2.privatestaticintx=100;
3.publicstaticvoidmain(Stringargs[]){
4.HasStatichs1=newHasStatic();
5.hs1.x++;
6.HasStatichs2=newHasStatic();
7.hs2.x++;
8.hs1=newHasStatic();
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
第二十五题
(单选题)栈是一种()
(A)存取受限的线性结构
(B)存取不受限的线性结构
(C)存取受限的非线性结构
(D)存取不受限的非线性结构
栈(stack)在计算机科学中是限定仅在表尾进行插入或删除操作的线性表。
答案:
A
第二十六题
(单选题)请问,以下哪些修饰符不能用于顶层类?
(A)public
(B)private
(C)abstract
(D)final
对于顶层类(外部类)来说,只有两种修饰符:
public和默认(default)。
因为外部类的上一单元是包,所以外部类只有两个作用域:
同包,任何位置。
因此,只需要两种控制权限:
包控制权限和公开访问权限,也就对应两种控制修饰符:
public和默认(default)。
但是private可以修饰class的,只不过该类不能使顶层类,可以是部类部类的上一级是外部类,那么对应的有四种访问控制修饰符:
本类(private),同包(default),父子类(protected),任何位置(public)。
当一个部类使用了private修饰后,只能在该类的外部类部使用
答案:
BCD
第二十七题
(多选题)如下哪些不是java的关键字()
(A)const
(B)null
(C)false
(D)this
java中,null、true、false都不属于java的关键字,它们都属于字面量值,都有着特殊的用途,且不建议作为标识符使用。
答案:
BC