java类笔试题目
Java是一个纯的面向对象的程序设计语言,它继承了 C++ 语言面向对象技术的核心,Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。以下是整理的java类笔试题目,欢迎参考阅读!
java类笔试题目
一、单项选择题
1.Java是从( )语言改进重新设计
A.Ada
B.C++
C.Pasacal
D.BASIC
答案:B
2.下列语句哪一个正确( )
A.Java程序经编译后会产生machine code
B.Java程序经编译后会产生byte code
C.Java程序经编译后会产生DLL
D.以上都不正确
答案:B
3.下列说法正确的有( )
A.class中的constructor不可省略
B.constructor必须与class同名,但方法不能与class同名
C.constructor在一个对象被new时执行。
D.一个class只能定义一个constructor
答案:C
4.提供Java存取数据库能力的包是( )
A.java.sql
B.java.awt
C.java.lang
D.java.swing
答案:A
5.下列运算符合法的是( )
A.&&
B.<>
C.if
D.:=
答案:A
6.执行如下程序代码a=0;c=0; do{ --c; a=a-1; }while(a>0); 后,C的值是( )
A.0
B.1
C.-1
D.死循环
答案:C
7.下列哪一种叙述是正确的( )
A.abstract修饰符可修饰字段、方法和类
B.抽象方法的body部分必须用一对大括号{ }包住
C.声明抽象方法,大括号可有可无
D.声明抽象方法不可写出大括号
答案:D
8.下列语句正确的是( )
A.形式参数可被视为local variable
B.形式参数可被字段修饰符修饰
C.形式参数为方法被调用时,真正被传递的参数
D.形式参数不可以是对象
答案:A
9.下列哪种说法是正确的( )
A.实例方法可直接调用超类的实例方法
B.实例方法可直接调用超类的类方法
C.实例方法可直接调用其他类的实例方法
D.实例方法可直接调用本类的类方法
答案:D
二、多项选择题
1.Java程序的种类有( )
A.类(Class)
B.Applet
C.Application
D.Servlet
2.下列说法正确的有( )
A.环境变量可在编译source code时指定
B.在编译程序时,所能指定的环境变量不包括class path
C.javac一次可同时编译数个Java源文件
D.javac.exe能指定编译结果要置于哪个目录(directory)
答案:BCD
3.下列标识符不合法的有( )
A.new
B.$Usdollars
C.1234
D.car.taxi
答案:ACD
4.下列说法错误的有( )
A.数组是一种对象
B.数组属于一种原生类
C.int number=[]={31,23,33,43,35,63}
D.数组的大小可以任意改变
答案:BCD
5.不能用来修饰interface的有( )
A.private
B.public
C.protected
D.static
答案:ACD
6.下列正确的有( )
A.call by value不会改变实际参数的数值
B.call by reference能改变实际参数的参考地址
C.call by reference不能改变实际参数的参考地址
D.call by reference能改变实际参数的内容
答案:ACD
7.下列说法错误的有( )
A.在类方法中可用this来调用本类的类方法
B.在类方法中调用本类的类方法时可直接调用
C.在类方法中只能调用本类中的类方法
D.在类方法中绝对不能调用实例方法
答案:ACD
8.下列说法错误的有( )
A.Java面向对象语言容许单独的过程与函数存在
B.Java面向对象语言容许单独的方法存在
C.Java语言中的方法属于类中的成员(member)
D.Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同
答案:ABC
9.下列说法错误的有( )
A.能被java.exe成功运行的java class文件必须有main( )方法
B.J2SDK就是Java API
C.Appletviewer.exe可利用jar选项运行.jar文件
D.能被Appletviewer成功运行的java class文件必须有main( )方法
三、 判断题
1.Java程序中的起始类名称必须与存放该类的文件名相同。( )答案:正确
2.Unicode是用16位来表示一个字的。( )答案:正确
3.原生类中的数据类型均可任意转换。( )答案:错误
四,编程题
1.输入1--50个数字,求出最小数和最大数的和输入以逗号隔开
结果:
这个题用C做,要考虑的东西太多了
如果用java做,可以用split函数,值得尝试。
2.简述有几种排序方法,并且实现快速排序。
3.JSP写入内容到文件有哪几种方式,实现其中至少两种。
4.有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第四个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
5. 判断101-200之间有多少个素数,并输出所有素数。
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,
则表明此数不是素数,反之是素数。
publicclass exp2{
publicstatic void main(String args[]){
inti=0;
for(i=1;i<=20;i++)
System.out.println(f(i));
}
publicstatic int f(int x)
{
if(x==1|| x==2)
return1;
else
returnf(x-1)+f(x-2);
}
}
6.判断101-200之间有多少个素数,并输出所有素数。
程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,
则表明此数不是素数,反之是素数。
importjava.util.ArrayList;
publicclass Sushu {
publicstatic void main(String[] args) {
ArrayListlist = new ArrayList( );
for(inti =101;i<=200;i++){
if(isPrime(i))
list.add(i);
}
System.out.println(list+" 共有"+list.size( )+"个素数");
}
publicstatic boolean isPrime(int i){
booleanflag = true;
for(intj =2;j<=Math.sqrt(i);j++){
if(i%j==0){
flag= false;
}
}
returnflag;
}
}
7.取一个整数a从右端开始的4~7位。
程序分析:可以这样考虑:
(1)先使a右移4位。
(2)设置一个低4位全为1,其余全为0的数。可用~(~0 <<4)
(3)将上面二者进行&运算
java类笔试题目
1). applet的运行过程要经历4个步骤,其中哪个不是运行步骤?
A.浏览器加载指定URL中的HTML文件
B.浏览器显示HTML文件
C.浏览器加载HTML文件中指定的applet类
D.浏览器中的Java运行环境运行该applet
正确答案:B
2). 二维数组A[O,…,8][0,…,9],其每个元素占2字节。从首地址400开始,按行优先顺序存储,则元素A[8][5]的存储地址为( )。
A.570
B.506
C.410
D.482
正确答案:A
答案解析:A[8][5]元素存储的位置在第9行第6列,所以A[8][5]之前存储的个数应为8×10+5 = 85,这些元素占用的空间为85×2字节=170字节,所以A[8][5]的存储位置为400+170= 570。
3). 用于生产过程控制的系统,一般都是( ),它要求有对输入数据及时做出响应的能力。
A.批处理系统
B.分时系统
C.实时系统
D.及时系统
正确答案:C
答案解析:用于生产过程控制的系统,一般都是实时系统,它要求有对输入数据及时做出反应(响应)的能力。由于环境和控制对象以及工作任务的不同,控制系统对计算机系统的要求也会不同,一般会对计算机系统的可靠性、封闭性、抗干扰性等指标提出要求。
4). Java语言的许多特点中,下列哪个特点是C++语言所不具备的?
A.高性能
B.跨平台
C.面向对象
D.有类库
正确答案:B
5). 在匹配器(Matcher)类中,用于寻找下一个模式匹配串的方法是( )。
A.static boolean matches( )
B.boolean matcher .fi nd( )
C.i nt matcher .start( )
D.i nt matcher .end( )
正确答案:A
答案解析:本题考查考生对Java 中的匹配器(Matcher)类的理解。Matcher 类用于将一个输入字符串i nput 和模式串pattern 相比较。Boolean matcher .fi nd( )方法用于寻找下一个模式匹配串;i nt matcher .start( )方法用于返回匹配串的一个起始索引整数值;i nt matcher .end( )方法用于返回匹配串的一个终止索引整数值。而用于输入字符串与模式串比较的方法是static boolean matches( ),选项A 正确。
6). J2EE和( )语言绑定。
A.C
B.C++
C.Java
D.汇编语言
正确答案:C
答案解析:J2EE的基础是J2SE,以Java为平台;而C语言用于ODBCAPI。由于两者不兼容,SUN公司才提出了JDBC作为Java几个平台与麴据库的标准连接。
7). 下列关于结构化设计原则的描述,错误的是
A.在块和进程的非正常出口处往往需要调用GOTO语句,使用GOTO语句使程序执行效率提高,但是滥用GOTO语句确实有害,应该避免使用GOTO语句。
B.程序设计时应该自顶向下,逐步求精。
C.程序设计时,应该将复杂问题进行模块化,就是将程序设计的总目标分解为若干个分目标,再进一步分解为具体的小目标。
D.在进行程序设计时,应该尽量在一行书写一条语句,尽量做到效率第一,清晰第二。
正确答案:D
8). 如果线程调用下列方法,不能保证使该线程停止运行的是( )。
A.sleep( )
B.stop( )
C.yield( )
D.wait( )
正确答案:C
答案解析:线程的方法中sleep( )方法的作用是使比当前线程优先级低的线程运行。该方法使一个线程暂停运行一段固定时间。在休眠时间内,线程将不运行,低优先级的线程将有机会运行。yield( )方法为只让给同等优先级的线程运行。如果没有同等优先级的线程是可运行状态,yield( )方法将什么也不做,即线程将继续运行。stop( )方法是强行终止线程。wait( )方法是线程间交互的方法,是使一个线程停止运行,进入等待状态。
9). 开发软件时对提高开发人员工作效率至关重要的是( )。
A.操作系统的资源管理功能
B.先进的软件开发工具和环境
C.程序员的数量
D.计算机的并行处理能力
正确答案:B
答案解析:先进的软件开发工具和环境对提高开发人员工作效率是至关重要的。
10). 信息隐蔽的概念与下述哪一种概念直接相关( )。
A.软件结构定义
B.模块***性
C.模块类型划分
D.模拟耦合度
正确答案:B
答案解析:信息隐蔽的概念与模块***性这一概念直接相关。