应届生Java基础笔试题2(二)

2014-11-24 00:54:34 · 作者: · 浏览: 25
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.关于下面程序,哪些结论是正确的


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.关于下面的程序,哪些结论是正确的


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.关于下面程序的结论,哪些结论是正确的


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.下面的程序输出什么


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的垃圾回收机制,下面哪些结论是正确的


A 程序可以任意指定释放内存的时间


B JAVA程序不能依赖于垃圾回收的时间或者顺序


C 程序可明确地标识某个局部变量的引用不再被使用


D 程序可以显式地立即释放对象占有的内存


22.下面程序的运行结果正确的是


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.关于下面程序,哪个结论是正确的


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”


class J_Base{


public String mb_getString(){


return “Base”;


} }


class J_SubClass extends J_Base{


public String mb_getSt