- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
Java基础笔试题及答案
一、选择题(每题5分,共25分)
下列关于Java数据类型的说法,正确的是()
A.short类型变量的取值范围是-128~127
B.char类型可以存储汉字,因为它占2个字节
C.float类型的精度比double类型更高
D.整数类型默认是long类型
答案:B
解析:A选项short取值范围是-32768~32767;C选项double精度高于float;D选项整数默认是int类型;char占2个字节(UTF-16编码),可存储单个汉字,故B正确。
以下代码执行后输出结果是()
publicclassTest{
publicstaticvoidmain(String[]args){
Stringstr1=abc;
Stringstr2=newString(abc);
System.out.println(str1==str2);
System.out.println(str1.equals(str2));
}
}
A.true、trueB.false、trueC.true、falseD.false、false
答案:B
解析:==比较对象地址,str1指向常量池对象,str2指向堆内存新对象,地址不同故第一个为false;String重写了equals方法,比较字符串内容,内容相同故第二个为true。
关于循环结构,下列说法错误的是()
A.for循环适合已知循环次数的场景
B.while循环先判断条件再执行循环体
C.do-while循环至少执行一次循环体
D.break语句只能跳出当前所在的循环
答案:D
解析:break可配合标签跳出指定循环(如嵌套循环中的外层循环),并非只能跳出当前循环,其他选项表述均正确。
下列数组初始化方式,错误的是()
A.int[]arr={1,2,3};
B.int[]arr=newint[3];arr[0]=1;arr[1]=2;arr[2]=3;
C.int[]arr=newint[]{1,2,3};
D.int[]arr;arr={1,2,3};
答案:D
解析:数组声明后单独赋值时,不能直接用{}初始化,需加newint[],正确写法应为arr=newint[]{1,2,3};。
关于面向对象的继承,下列说法正确的是()
A.Java支持多继承
B.子类可以继承父类的所有成员(包括私有成员)
C.子类构造方法必须通过super()调用父类构造方法
D.子类重写父类方法时,访问权限不能低于父类方法
答案:D
解析:A选项Java只支持单继承;B选项子类不能访问父类私有成员;C选项若父类有默认无参构造,子类可省略super();D选项重写需满足“两同两小一大”(方法名、参数列表相同;返回值、异常范围更小;访问权限更大),故D正确。
二、填空题(每空3分,共30分)
声明一个只能在当前类中访问的int类型变量num,初始值为10,代码为:______intnum=10;
答案:private
执行以下代码,输出结果是:______
inta=5;
intb=a++*2;
System.out.println(b);
答案:10
解析:a++是后置自增,先参与运算(5*2=10),再自增为6,故b=10。
抽象类的关键字是______,接口的关键字是______。
答案:abstract;interface
处理异常的核心关键字有try、catch和______,其中______块中的代码无论是否发生异常都会执行。
答案:finally;finally
ArrayList的底层数据结构是______,LinkedList的底层数据结构是______,查找元素时______(填集合类名)效率更高。
答案:数组;双向链表;ArrayList
三、简答题(每题10分,共20分)
简述String、StringBuilder和StringBuffer的区别。
答案:
可变性:String是不可变字符串(底层char数组被final修饰),修改时会创建新对象;StringBuilder和StringBuffer是可变字符串,修改时直接操作原数组。
线程安全:StringBuffer的方法加了synchronized锁,线程安全;StringBuilder未加锁,线程不安全。
效率:StringBuilder效率最高,Strin
文档评论(0)