JAVA基础测试题

匿名网友 匿名网友 发布于: 2015-08-30 00:00:00
阅读 122 收藏 0 点赞 0 评论 0

JAVA基础测试题
班级        姓名       分数       
一、选择题
1.下面程序的运行结果是     12
int i=0;
while(true){
	if(i++>10)	break;
	System.out.println(i);
}
2.下面程序的运行结果是     8
int a=2;
	switch(a){
	case 1: a+=1;break;
	case 2: a+=2;
	case 3: a+=3; break;
	case 4: a+=4; break;
	default : a=0;
	}
	System.out.println(a);
	}	
3.下面程序的运行结果是    A B D C B D C B    
public class J_Test {
	static boolean mb_fun(char c){
		System.out.println(c);
		return true;
	}
	public static void main(String[] args) {
		int i=0;
for(mb_fun('A');mb_fun('B')&&(i<2);mb_fun('C')){
		i++;
		mb_fun('D');
		}	}	}
4.下面哪些单词不是JAVA的关键字( A D )
A sizeof   B abstract   C null    D String
5.下面哪个语句不会产生编译错误(  C  )
A float a=2.0;  B char c="a";	
C byte b=25; 	 D boolean d=null;
6.下面哪些语句可以通过编译( A C D )
A float a=1; 	B float b=1.0; 
C float c=2e1f; D float d=0x1234;
7.下面程序的运行结果是    ( D )       
int a=3, b=1;
if(a==b)	
System.out.println("a="+a);
A a=1 		B a=3  
C 编译错误  D 正常运行但没有输出
8.下面程序的运行结果是   B       
int a=1,b=2;
int c=(a+b>3?a++:++b);
A a=2,b=3 B a=1,b=3 
C a=1,b=2 D c=false
9.下面程序的运行结果     c
public class J_Test {	 
	public static int mb_fun(int c){
		return (c%2);
	}
	public static void main(String[] args) {
		if(mb_fun(3))
			System.out.println("1");
			else System.out.println("2");
	}	
}	
A 1   B 2  C 编译错误 D 运行时错误
10.当整数变量值为多少时,会输出" message 2"    B C D    
switch(i){
		Case	1: System.out.println("Message1");
		case 	2: 
		Case	3: System.out.println("Message2");
		break;
		}
A 0    B 1   C 2   D 3   E 4
11.下面程序的运行结果,哪个是正确的    A 
byte b=1;
while(++b>0);
System.out.println("LOOP");
A 运行程序将会进入死循环导致无输出
B 每运行一次程序则输出一次LOOP并退出
C 每运行一次程序,会输出多次LOOP
D 程序中含有编译错误

12.写出下面程序的运行结果    J_SuperClass  J_SubClass  
public class J_SuperClass {
	J_SuperClass(){
		System.out.println("J_SuperClass");
	}	
}

Class J_SubClass extends J_SuperClass{
	J_SubClass(){
		System.out.println("J_SubClass");
	}

	Public	static	void	main(String args[]){
		new J_SubClass();
	}	
}

13.写出下面程序的运行结果     Test
public class J_Base {
	public void mb_method(){
		System.out.println("Base");
	}	
}

Public class J_Test extends J_Base{
	public void mb_method(){
		System.out.println("Test");
	}
	public	static	void main(String[] args) {
		Object a=new J_Test();
		((J_Base)a).mb_method();
	}	
}
14.下面的程序输出是: J_Test::mb_method J_Test::mb_methodStatic J_Test::mb_method J_Test::mb_methodStatic
public class J_SuperClass{
	void mb_method(){
		System.out.println("J_SuperClass::mb_method");
	}
	static void mb_methodStatic(){ 
		System.out.println("J_SuperClass::mb_methodStatic");
	}
}        
public	class	J_Test	extends J_SuperClass{
	void mb_method(){
		System.out.println("J_Test::mb_method");
	}
	static void mb_methodStatic(){ 
		System.out.println("J_Test::mb_methodStatic");
	}
	
	Public	static	void main(String args[]){
		J_SuperClass a=new J_Test();
		a.mb_method();
		a.mb_methodStatic();
		J_Test b=new J_Test();
		b.mb_method();
		b.mb_methodStatic();
	}	
}

15.下面程序输出的结果:       编译进出错
public class J_Test{
	static int m_data =0;
	public int mb_method(){
		m_data++;
		return m_data;
	}
	public static void main(String args[]){
		J_Test a=new J_Test();
		J_Test b=new J_Test();
		J_Test c=new J_Test();
		a.mb_method();
		b.mb_method();
		c.mb_method();
		int i=a.mb_method();
		System.out.println(i);
	}	
}
16.关于下面程序,哪些结论是正确的     
public class J_Test{
	public J_Test(){
		System.out.println("2");
	}
	public static void main(String args[]){
		J_Test s=new J_Test();
		s.J_Test();
		System.out.print("1");
	}	
}
A 程序可以通过编译并正常运行,结果输出21;
B 程序可以通过编译并正常运行,结果输出221
C 程序无法通过编译
D 程序可以通过编译,但无法正常运行
17.关于下面程序,哪些结论是正确的     C
public class J_Super {
	public int m_dataSuper;
	public J_Super(int d) {
		m_dataSuper = d;
	}	
}
Public	class	J_Test	extends J_Super {
	public int m_data;
	public J_Test(int ds, int d) {
		m_data = d;
		super(ds);
	}
	public static void main(String args[]) {
		J_Test s = new J_Test(2, 3);
		System.out.println(s.m_data + s.m_dataSuper);
	}	
}
A 程序可以通过编译度正常运行,输出5
B 程序可以通过编译并正常运行,输出23
C 程序无法通过编译,没有输出
D 程序可以通过编译,但无法正常运行
18.关于下面的程序,哪些结论是正确的    D  
public class J_Super {
	public J_Super() {
		System.out.println("1");
	}	
}

public class J_Sub extends J_Super {
	public J_Sub() {
		System.out.println("2");
	}	
}

public class J_Test extends J_Sub{
	public J_Test (){
		super.super();
		System.out.println("3");
	}
	public static void main(String args[]) {
		J_Test s = new J_Test();
	}	
}
A 程序可以编译并正常运行,结果为123
B 程序可以编译并正常运行,结果为13
C 程序可以编译并正常运行,结果为213
D 程序无法编译
19.关于下面程序的结论,哪些结论是正确的   C  
class J_SubClass extends J_Test{

}
public class J_Test{
	J_Test(int i) {
		System.out.println(i);
	}
	public static void main(String args[]){
		J_SubClass a=new J_SubClass();
	}	
}
A 不能通过编译,因为类J_Test没有定义无参的构造方法
B 不能通过编译,因为类J_SubClass没有定义无参的构造方法
C 不能通过编译,没有实现J_SubClass(int i)构造方法
D 可以成功通过编译
20.下面的程序输出什么      A  
public class J_Test{
	int m_i=2;
	String m_s=null;
	public J_Test() {
		m_i=3;
		m_s="constructor";
	}
	public static void main(String args[]){
		J_Test app=new J_Test();
		System.out.println(app.m_i+app.m_s);
	}	
}
A 3null 	B 3constructor 
C 2constructor 	D 2null
21. 关于JAVA的垃圾回收机制,下面哪些结论是正确的    B    
A 程序可以任意指定释放内存的时间
B JAVA程序不能依赖于垃圾回收的时间或者顺序
C 程序可明确地标识某个局部变量的引用不再被使用
D 程序可以显式地立即释放对象占有的内存
22.下面程序的运行结果正确的是       B
class J_Class {
	public int m_data=3;
}
public class J_Test{
	public static void main(String args[]){
		Object a=(Object)new J_Class();
		J_Class b=(J_Class)a;
		System.out.println("data="+b.m_data);
	}	
}
A 能编译,结果输出data=3
B 不能编译
C Object a=(Object)new	J_Class();会抛出一个异常
D J_Class b=(J_Class)a会抛出一个异常
23.关于下面程序,哪个结论是正确的      B
class J_SuperClass {	

}
public class J_SubClass extends J_SuperClass{
	public static void main(String args[]){
		J_SuperClass a=new J_SuperClass();
		J_SubClass b=new J_SubClass();
		b=(J_SubClass)a;
	}	
}
A 无法通过编译,因为没有构造方法
B 可以通过编译,但在运行时将出错
C 可以通过编译,也可以正常运行
D 无法通过编译,b=(J_SubClass)a错误
24.下面程序在指定位置插入哪句会导致程序输出“sub”          
class J_Base{	

}
class J_SubClass extends J_Base{
	public String mb_getString(){
		return "sub";
	}
	public static void main(String args[]){
		J_Base app=new J_SubClass();
		//插入需要的语句
	}	
}
A System.out.println(app.mb_getString());
B System.out.println((J_Base)app.mb_getString());
C System.out.println((J_SubClass)app.mb_getString());
D System.out.println(((J_SubClass)app).mb_getString());
25.下面程序在指定位置插入哪句会导致程序输出“sub”   D        
class J_Base{
	public String mb_getString(){
		return "Base";
	}	}
class J_SubClass extends J_Base{
	public String mb_getString(){
		return "sub";
	}
	public static void main(String args[]){
		J_Base app=new J_SubClass();
		//插入需要的语句
	}	
}
A System.out.println(app.mb_getString());
B System.out.println((J_Base)app.mb_getString());
C System.out.println((J_SubClass)app.mb_getString());
D System.out.println(((J_SubClass)app).mb_getString());
26.下面程序的正确结论是        
class J_Base{	}
class J_SubClass extends J_Base{
	public String mb_getString(){
		return "sub";
	}
	public static void main(String args[]){
J_SubClass app=(J_SubClass)new J_Base();
System.out.println(((J_SubClass)app).mb_getString());
	}	}
A 发生编译错误
B 能编译但不能运行
C 能编译能运行,输出sub
D ((J_SubClass)app).mb_getString() 是不正确的语法
27.下面程序的输出结果是        
class J_Base{
	public int m_data=5;
	public void mb_print(){
		System.out.print(m_data);
	}	}
class J_SubClass extends J_Base{
	public int m_data=2;
	public void mb_print(){
		System.out.print(m_data);
	}
	public static void main(String args[]){
		J_Base app=new J_SubClass();
		app.mb_print();
		System.out.println(app.m_data);
	}	}
A 22 B 55 C 25 D 52
28.下面哪些方法置于指定位置会导致编译错误     
public class J_Super {
	public float getNum(){
	return 3.0f;	
	}	}
public class J_Sub extends J_Super{
	//指定位置	
}
A public float getNum(){return 4.0f;}
B public void getNum(){}
C public void getNum(double d){}
D public double getNum(float d){return 4.0d;	}
29.已知字母a和b对应的数值分别是97和98,关于下面程序哪些选项是正确        
public class J_Test {
	static char m_name;
	static int m_age;
	public static void mb_setData(char n){
		m_name=n;
	}
	public static void mb_setData(int age){
		m_age=age;
	}
	public static void main(String[] args) {
		mb_setData((int)'a');
		mb_setData((char)98);
		System.out.println(m_name+" "+m_age);
	}	}
A 结果输出 a 98	 B 结果输出 b 97 
C 结果输出 b 98	 D 结果输出a 97
30.下面程序哪些结论是正确的          
public class J_Test {
	static short m_index;
	static int m_age;
	public static void mb_setData(short n){
		m_index=n;
	}
	public static void mb_setData(int age){
		m_age=age;
	}
	public static void main(String[] args) {
		mb_setData(98);
		System.out.println(m_index+" "+m_age);
	}	}
A 结果输出 98 0 	B结果输出0 98
C 结果输出 0 0   	D 结果输出98 98	
E 程序编译错误
31.下面程序哪些结论是正确的         
public class J_Test {
	static short m_index;
	static int m_age;
	public static void mb_setData(short n){
		m_index=n;
	}
	public static void main(String[] args) {
		mb_setData(98);
		System.out.println(m_index+" "+m_age);
	}	}
A 结果输出 98 0 	B结果输出0 98
C 结果输出 0 0   	D 结果输出98 98	
E 程序编译错误

评论列表
文章目录