java面向对象考试题Word格式.docx
- 文档编号:22632265
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:20
- 大小:21.29KB
java面向对象考试题Word格式.docx
《java面向对象考试题Word格式.docx》由会员分享,可在线阅读,更多相关《java面向对象考试题Word格式.docx(20页珍藏版)》请在冰豆网上搜索。
Short"
publicstaticvoidgo(intn){
int"
publicstaticvoidmain(String[]args){
shorty=6;
longz=7;
go(y);
go(z);
}
虽然y是short型的,但是编译器把它转换为int型
intLong
第三题:
publicstaticvoidmain(String[]args){
Stringtest="
TestA.TestB.TestC."
;
Stringregex="
\\.\\s*"
String[]result=test.split(regex);
for(Strings:
result)
System.out.print(s+"
\s空白字符*表示0个或任意多个text.split("
\\."
)按.拆分
TestATestBTestC
第四题:
publicclassAA{
privateLonguserId;
privateStringnickName;
publicLonggetUserId(){
returnuserId;
publicvoidsetUserId(LonguserId){
this.userId=userId;
publicStringgetNickName(){
returnnickName;
publicvoidsetNickName(StringnickName){
this.nickName=nickName;
publicstaticvoidmain(String[]args){
AAm1=newAA();
m1.setUserId(newLong(100001));
m1.setNickName("
mick"
AAm2=newAA();
m2.setUserId(newLong(100001));
m2.setNickName("
System.out.println(m1==m2);
System.out.println(m1.equals(m2));
equals方法返回值也是returnm1==m2
falsefalse
第五题
运行下列代码,输出为false的是:
()。
A.Stringst1="
abc"
System.out.println("
==st1);
B.Stringst2=
"
System.out.println(st2.equals(newString("
)));
C.Integeri=100;
System.out.println(100==i);
D.ArrayListlist=newArrayList();
System.out.println(list.contains(null));
答案:
D
第六题
publicinterfaceCookie{
Cookiecookie=newCart("
小面包"
盼盼"
}
publicclassCartimplementsCookie{
privateStringname;
privateStringproduction;
publicCart(Stringname,Stringproduction){
this.name=name;
this.production=production;
}
publicvoidsmell(){
cookie=newCart("
蛋黄派"
达利园"
final要求属性不可更改cookie=newCart("
这个修改了cookie的地址,所以报错
第七题
(多选)请看下列代码:
publicabstractclassShape{
intx;
inty;
publicabstractvoiddraw();
publicvoidsetAnchor(intx,inty){
this.x=x;
this.y=y;
下列选项中能正确使用Shape类的是:
A.publicclassCircleimplementsShape{privateintradius;
B.publicabstractclassCircleextendsShape{privateintradius;
C.publicclassCircleextendsShape{privateintradius;
publicvoiddraw();
D.publicclassCircleextendsShape{
privateintradius;
publicvoiddraw(){
抽象类不可以实例化,如果一个类继承了抽象类,必须重新其抽象方法
BD
第八题
packagecom.tarena;
publicclassGeodetics{
publicstaticfinaldoubleDIAMETER=12756.32;
访问静态常量DIAMETER的方式正确的是:
A.importcom.tarena.Geodetics;
publicclassTerraCarta{
publicdoublehalfway(){
returnGeodetics.DIAMETER/2.0;
B.importcom.tarena.Geodetics;
returnDIAMETER/2.0;
C.importcom.tarena;
D.importcom.tarena.*;
AD
第九题
(多选)在Java语言中,下列说法正确的是()。
A.一个接口可以继承多个接口
B.一个类可以继承多个类
C.一个类可以实现多个接口
D.一个类可以有多个子类
ACD
第十题
(多选)在<
插入代码>
处,填入下列代码编译正确的是:
publicvoidfoo(int[]x){<
插入代码>
A.foreach(intz:
x)System.out.println(z);
B.for(intz:
C.while(x.hasNext())System.out.println(x.next());
D.for(inti=0;
i<
x.length;
i++)System.out.println(x[i]);
第十一题
(多选)查看如下代码:
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();
str=strNew;
C.intlength=str.length();
Stringfirst=str.substring(0,1);
StringstrNew=str.replaceAll(first,"
max_length=length-strNew.length();
str=strNew;
System.out.println(first+"
D.intlength=str.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<
String>
D.Strings=(String)Old.get(newLinkedList<
1.重写必须继承,重载不用。
2.重写的方法名,参数数目相同,参数类型兼容,重载的方法名相同,参数列表不同。
3.重写的方法修饰符大于等于父类的方法,重载和修饰符无关。
4.重写不可以抛出父类没有抛出的一般异常,可以抛出运行时异常
publicvoidmain(intx){}
intd='
a'
+'
b'
c'
对的
第十六题
(单选题)从下面四段(A,B,C,D)代码中选择出正确的代码段()
(A)abstractclassName{
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
静态块是类加载的时候就会被执行到的,静态执行顺序是按照在类中出现的先后顺序执行。
第二十题
(单选题)下列哪种说法是正确的()
(A)本类中实例方法可以调用其他类中所有实例方法
(B)本类中实例方法可以调用其他类中类方法
(C)本类中实例方法可以直接通过方法名调用其他类的实例方法
(D)本类中实例方法可以直接通过方法名调用本类中其他实例方法
A.本类实例方法不可以调用其他类的私有实例方法。
B.本类实例方法不可以调用其他类的私有类方法。
C.本类实例方法不可以直接通过方法名调用其他类的实例方法。
第二十一题
(多选题)在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子类重写父类的方法如果返回值类型是基本类型的话,要求相同。
第二十三题
(单选题)在下面程序的第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);
12.}
13.}
(A)5行不能通过编译,因为引用了私有静态变量
(B)10行不能通过编译,因为x是私有静态变量
(C)程序通过编译,输出结果为:
x=103
(D)程序通过编译,输出结果为:
x=102
静态变量是所有对象所共享的,所以上述代码中的几个对象操作是同一静态变量x,静态变量可以通过类名调用。
第二十五题
(单选题)栈是一种()
(A)存取受限的线性结构
(B)存取不受限的线性结构
(C)存取受限的非线性结构
(D)存取不受限的非线性结构
栈(stack)在计算机科学中是限定仅在表尾进行插入或删除操作的线性表。
A
第二十六题
(单选题)请问,以下哪些修饰符不能用于顶层类?
(A)public
(B)private
(C)abstract
(D)final
对于顶层类(外部类)来说,只有两种修饰符:
public和默认(default)。
因为外部类的上一单元是包,所以外部类只有两个作用域:
同包,任何位置。
因此,只需要两种控制权限:
包控制权限和公开访问权限,也就对应两种控制修
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 面向 对象 考试题