——————————————装————————————————订————————————————线————————————————————————————————
20092010学年第一学期
计算机科学学院《Java语言程序设计》期末考试试卷(B卷)
年级:06 专业:计算机科学技术  班级:软件 学号:      姓名:   
题号
总分
签名
得分
注:1、共100分,考试时间120分钟。
    2、此试卷适用于计算机科学技术本科专业。
阅卷教师
一、判断题,对的打[]、错的打[]10分,每小题2分)
1. java没有多继承,但可以通过接口的形式来达到多继承的目地。    (√)
2. Java中的char型变量中能存贮一个中文汉字。                  (√)
3. Java中的数组没有length()这个方法,但有length的属性,而Stringlength()这个方法。                                              (√)
4. 具有关键字abstract ,在实现内容上没有完全定义的类叫抽象类。 (√)
5. 父类的构造方法可以被子类覆盖。                              (╳)
阅卷教师
二、单选择题:20分,每小题2
1Container是下列哪一类的子类? D
AGraphics    BWindow          CApplet    DComponent
2.下列各选项中属于不合法标识符的是( C )。
A$million    B$_million        C2$_million    D$2_million
3下面的哪一个关键字通常用来对对象加锁,从而使得对对象的访问是排他的?
C
Aserialize    Btransient    Csynchronized  Dstatic
4下列哪种说法是正确的( D
  A 实例方法可直接调用超类的实例方法
  B 实例方法可直接调用超类的类方法
  C 实例方法可直接调用其他类的实例方法
  D 实例方法可直接调用本类的类方法
5.进行java基本GUI设计需要用到的包是( C
Ajava.io      Bjava.sql      Cjava.awt    Di
6.下列表达式1+2+”aa”+3的值是 B
  A  “12aa3”    B “3aa3”      C  “12aa”    D “aa3”
7.下列语句哪一个正确( B
  A Java程序经编译后会产生machine code
  B Java程序经编译后会产生byte code
  C Java程序经编译后会产生DLL
  D 以上都不正确
8 下列说法中,错误的一项是( A )
A. 线程就是程序     
B. 线程是一个程序的单个执行流
C. 多线程是指一个程序的多个执行流     
D. 多线程用于实现并发
9.下列选项中,不属于Java语言特点的一项是( C
A. 分布式                              B. 安全性
C. 编译执行                          D. 面向对象
10假设aint类型的变量,并初始化为1,则下列( D  )是合法的条件语句。
    A. if(a){}                          B. if(a<<=3){}
    C. if(a=2){}                        D. if(true){}
阅卷教师
——————————————装————————————————订————————————————线————————————————————————————————
三、填空题:20分,每空2分)
1对象 是对事物的抽象,而 是对对象的抽象和归纳。
2.如果用户确实需要亲自设置构件大小或位置,则应取消该容器的布局管理器,方法为: SetLayout(null)
3.容器本身也是一个  构件 ,具有构件的所有性质,另外还具有放置其他构件 容器 的功能。
4abstrack类中不能有 private 访问权限的数据成员或成员方法。
5Java的图形用户界面技术经历了两个发展阶段,分别通过提供  AWT 开发包和 Swing 开发包来体现。
6.在面向对象系统中,消息分为两类:公有消息 私有消息
阅卷教师
四、程序分析题:写出下列程序完成的功能20分,每小题10分)
1 public class ThreadSyncDemo{
    public static void main(String args[]){
java程序设计考试题        ThreadTest t=new ThreadTest();
        new Thread(t).start();
        new Thread(t).start();
    }
    }
    class ThreadTest implements Runnable {
      private int tickets=6;
      public void run(){
      while(true){synchronized(this){
          if(tickets>0){
          try{ Thread.sleep(10);}
          catch(Exception e){
        System.out.Message()) ;
          }
          System.out.println(Thread.currentThread().getName() +" 正在卖第"+ tickets-- +"号票");
}
  }
      }
}
解:Thread-0 正在卖第6号票
Thread-1 正在卖第5号票
Thread-0 正在卖第4号票
Thread-1 正在卖第3号票
Thread-0 正在卖第2号票
Thread-1 正在卖第1号票
2public  class  X6_3_3 {
  public  static  void  main(String args[]) { 
    int a[]={36,25,48,14,55,40,32,66};
    int b1,b2;
    b1=b2=a[0];
    for(int i=1;i<a.leangth;i++)
      if(a[i]<b1){
        if(b1<b2) b2=b1;
        b1=a[i];
          }
        System.out.println( b1+"\t"+b2 );
      }
    }
解:运行结果是:14  25
阅卷教师
五、程序填空题:将下列程序补充完整14分)
下面是一个在点(10,20)显示图像photo.jpg的示例,请按要求填写下划线部分的语句
import  java.awt.*;
import  java.applet.Applet;
public class showphoto extends Applet {
    Image  myImage ;
    public void init(){   
——————————————装————————————————订————————————————线————————————————————————————————
                // 获取HTML文件所在目录中的图像“photo.jpg
    }
    public void paint(Graphics g){
                  // 显示图像
    }
}
//注:语句得7分,语句得7分;
  解: myImage = getImage(getDocumentBase(), "photo.jpg" );
      g.drawImage(myImage, 10, 20, this );
阅卷教师
六、编程题:16分)
以下是一个创建“通讯录”表Address的部分代码,该表包含三个字段:姓名(Name)、电话
Tel)和(Email),请编程将代码中“”部分补充完整。
import java.sql.*;
public class Ex1{
        public static void main(String[] args) {
        String jdbcDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
        String conURL="jdbc:odbc:addressDB";
        try {
              Class.forName(jdbcDriver);
        }
        catch(ClassNotFoundException e) {
              e.printStackTrace();
        }
        try {
             
              //  创建Connection对象
//  创建Statement对象
//  创建一个含有三个字段的地址表Address
              //  执行SQL命令
                s.close();       
                con.close();   
                System.out.println("成功创建数据表!");
        }
        catch(SQLException e){ e.printStackTrace();  }
    }
}
//注:以上创建数据表的代码中,关键用到四条指令,写对每条得4分。
解:补充的代码如下:
              Connection Connection(conURL);
              Statement ateStatement();

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。