zoukankan      html  css  js  c++  java
  • J2EE面试题之一

     

    一、判断题(30分)

    1.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。

    2.对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。

    3.有的类定义时可以不定义构造函数,所以构造函数不是必需的。

    4.类及其属性、方法可以同时有一个以上的修饰符来修饰。

    5.Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点

    6.抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。

    7.Final类中的属性和方法都必须被final修饰符修饰。

    8.最终类不能派生子类,最终方法不能被覆盖。

    9.子类要调用父类的方法,必须使用super关键字。

    10.一个Java类可以有多个父类。

    11.如果p是父类Parent的对象,而c是子类Child的对象,则语句c = p是正确的。

    12.在java集合中,Vector和HashMap是线程安全的。

    13.当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行。

    14.接口是特殊的类,所以接口也可以继承,子接口将继承父接口的所有常量和抽象方法。

    15.用“+”可以实现字符串的拼接,用- 可以从一个字符串中去除一个字符子串。

     

    二、选择题(30分)

    1、关于垃圾收集的哪些叙述是正确的( ):

    A.程序开发者必须自己创建一个线程进行内存释放的工作

    B.垃圾收集允许程序开发者明确指定并立即释放该内存

    C.垃圾收集将检查并释放不再使用的内存

    D.垃圾收集能够在期望的时间释放被java对象使用的内存

    2、下面的哪些赋值语句是不正确的( ):

    A.float f=11.1;

    B.double d=5.3E12;

    C.double d=3.14159;

    D.double d=3.14D;

    3、下面关于变量及其范围的陈述哪些是不正确的( ):

    A.实例变量是类的成员变量

    B.实例变量用关键字static声明

    C.在方法中定义的局部变量在该方法被执行时创建

    D.局部变量在使用前必须被初始化

    4、下列关于修饰符混用的说法,错误的是( ):

    A.abstract不能与final并列修饰同一个类

    B.abstract类中不可以有private的成员

    C.abstract方法必须在abstract类中

    D.static方法中能处理非static的属性

    5、容器Panel和Applet缺省使用的布局编辑策略是():

    A、BorderLayout B、FlowLayout C、GridLayout D、CardLayout

    6、以下标识符中哪项是不合法的( ):

    A、 BigMeaninglessName B、$int

    C、1 st D、$1

    7、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( ):

    A、 public static void main()

    B、 public static void main(String[ ] args)

    C、 public static int main(String[ ] arg)

    D、 public void main(String arg[ ])

    8、执行完以下代码int [ ] x = new int[25];后,以下哪项说明是正确的( ):

    A、 x[24]为0

    B、 x[24]未定义

    C、 x[25]为0

    D、 x[0]为空

    9、以下代码段执行后的输出结果为( ):

    int x=3; int y=10;

    System.out.println(y%x);

    A、0

    B、1

    C、2

    D、3

    10、以下哪个表达式是不合法的( ):

    A、String x=”Hello”; int y=9; x+=y;

    B、String x=”Hello”; int y=9; if(x= =y) { }

    C、String x=”Hello”; int y=9; x=x+y;

    D、String x=null; int y=(x!=null)&&(x.length()>0) ? x.length : 0

    11、编译运行以下程序后,关于输出结果的说明正确的是 ( ):

    public class Conditional{

    public static void main(String args[ ]){

    int x=4;

    System.out.println(“value is “+ ((x>4) ? 99.9 :9));

    }

    }

    A、 输出结果为:value is 99.99

    B、 输出结果为:value is 9

    C、 输出结果为:value is 9.0

    D、 编译错误

    12、以下声明合法的是( ):

    A、 default String s;

    B、 public final static native int w( )

    C、 abstract double d;

    D、 abstract final double hyperbolicCosine( )

    13、关于以下application的说明,正确的是( ):

    1. class StaticStuff

    2. {

    3. static int x=10;

    4. static { x+=5;}

    5. public static void main(String args[ ])

    6. {

    7. System.out.println(“x=” + x);

    8. }

    9. static { x/=3;}

    10. }

    A、 4行与9行不能通过编译,因为缺少方法名和返回类型

    B、 9行不能通过编译,因为只能有一个静态初始化器

    C、 编译通过,执行结果为:x=5

    D、编译通过,执行结果为:x=3

    14、关于以下程序代码的说明正确的是( ):

    1.class HasStatic{

    2. private static int x=100;

    3. public static void main(String args[ ]){

    4. HasStatic hs1=new HasStatic( );

    5. hs1.x++;

    6. HasStatic hs2=new HasStatic( );

    7. hs2.x++;

    8. hs1=new HasStatic( );

    9. hs1.x++;

    10. HasStatic.x- -;

    11. System.out.println(“x=”+x);

    12. }

    13.}

    A、5行不能通过编译,因为引用了私有静态变量

    B、10行不能通过编译,因为x是私有静态变量

    C、程序通过编译,输出结果为:x=103

    D、程序通过编译,输出结果为:x=102

    15、以下选项中循环结构合法的是( ):

    A、while (int i<7){

    i++;

    System.out.println(“i is “+i);

    }

    B、int j=3;

    while(j){

    System.out.println(“ j is “+j);

    }

    C、int j=0;

    for(int k=0; j + k !=10; j++,k++){

    System.out.println(“ j is “+ j + “k is”+ k);

    }

    D、int j=0;

    do{

    System.out.println( “j is “+j++);

    if (j = = 3) {continue loop;}

    }while (j<10);

     

    三、简答题(40分)

    1. 写出下列程序的运行结果

    public class Cat

    {  

    void mi( ) throws NullPointerException

    {

    System.out.println( “Cat mi mi .. “ );

    }

    }

    public class SmallCat extends Cat

    {int i=8;

    void mi( ) throws Exception

    {

    System.out.println( “SmallCat mi mi .. “ );

    }

    public static void main( String[] a ) throws Exception

    {

    Cat cat = new SmallCat();

    cat.mi();

    }

    }

     

    写出下列程序的运行结果

    interface Playable {

    void play();

    }

    interface Bounceable {

    void play();

    }

    interface Rollable extends Playable, Bounceable {

    Ball ball = new Ball("PingPang");

    }

    class Ball implements Rollable {

    private String name;

    public String getName() {

    return name;

    }

    public Ball(String name) {

    this.name = name;

    }

    public void play() {

    ball = new Ball("Football");

    System.out.println(ball.getName());

    }

    }

     

    写出下列程序的运行结果

    class Value{

    public int i = 15;

    }

    public class Test{

    public static void main(String argv[]){

    Test t = new Test();

    t.first();

    }

    public void first(){

    int i = 5;

    Value v = new Value();

    v.i = 25;

    second(v, i);

    System.out.println(v.i);

    }

    public void second(Value v, int i){

    i = 0;

    v.i = 20;

    Value val = new Value();

    v = val;

    System.out.println(v.i + " " + i);

    }

    }

     

    写出下列程序的运行结果

    class MyThread extends Thread{

    public void run(){

    System.out.println("MyThread: run()");

    }

    public void start(){

    System.out.println("MyThread: start()");

    }

    }

    class MyRunnable implements Runnable{

    public void run(){

    System.out.println("MyRunnable: run()");

    }

    public void start(){

    System.out.println("MyRunnable: start()");

    }

    }

    public class MyTest {

    public static void main(String args[]){

    MyThread myThread = new MyThread();

    MyRunnable myRunnable = new MyRunnable();

    Thread thread = new Thread(myRunnable);

    myThread.start();

    thread.start();

    }

    }

    2. 1~100共一百个自然数,放入一个99个元素的数组a[99],要求用java语言编写出一个尽量简单的程序,找出没有被放入数组的这个数。

     

    3. 简要叙述一下什么是数据库连接池,有何作用。

     

    4. 简要描述Struts,spring,hibernate?

     

    --------------------------------------------------------------------------------

    判断题命案:

    XXX√X

    XX√XX

    X X√√X

    选择

    CABDB CBBBB CBCDC

    简答

    1、 错误:

     

    该程序不能编译 void mi()抛出的异常父类和子类必须相同

    子类SmallCat 构造器中 super (); 一定要在构造器的第一行

     

    2、 错误:

    程序不能编译

    3、 15 0 20

    4、 prints:

      MyThread: start()

    MyRunnable: run()

  • 相关阅读:
    Notes for Advanced Linux Programming 2. Writing Good GNU/Linux Software
    GIT 子模块温习
    Memcached 源码分析——从 main 函数说起
    Zookeeper 初体验之——JAVA实例
    如何使用 indent 美化你的代码
    PGF/TIKZ 资源汇总
    Zookeeper 进阶之——Zookeeper编程示例(如何使用Zookeeper实现屏障Barriers和队列Queues)
    Zookeeper 进阶之——典型应用场景(二)
    如何将 Linux 内核实现的红黑树 rbtree 运用到你的 C 程序中?
    三行代码实现C语言单元测试框架
  • 原文地址:https://www.cnblogs.com/soundcode/p/1910317.html
Copyright © 2011-2022 走看看