期中考试测试

test1

1、编译Java Application源文件将产生相应的字节码文件,扩展名为( )
    A、.java
    B、.class
    C、.html
    D、.exe

2、下列关于变量的叙述( )是错的?
    A、实例变量是类的成员变量。
    B、在方法中定义的局部变量在该方法被执行时创建。
    C、实例变量用关键字static声明。
    D、局部变量在使用前必须被初始化。

3、已知A类被打包在packageA , B类被打包在packageB ,且B类被声明为public ,且有一个成员变量x被声明为protected控制方式 。C类也位于packageA包,且继承了B类 。则以下说法正确的是( )
    A、A类的实例不能访问到B类的实例
    B、A类的实例能够访问到B类一个实例的x成员
    C、C类的实例可以访问到B类一个实例的x成员
    D、C类的实例不能访问到B类的实例

4、以下关于abstract的说法,正确的是( )
    A、abstract只能修饰类
    B、abstract只能修饰方法
    C、abstract类中必须有abstract方法
    D、abstarct方法所在的类必须用abstract修饰

5、关于内部类,下列说法不正确的是( )
    A、内部类不能有自己的成员方法和成员变量
    B、内部类可用private或protected修饰符修饰
    C、内部类可以作为其他类的成员,而且可访问它所在的类的成员
    D、除static内部类外,不能在类内声明static成员

6、Java中, 一个子类可以有多个父类,一个父类也可以有多个子类。

7、当子类对象和父类对象能接收同样的消息时,它们针对消息产生的行为可能不同。

8、java语言不允许同时继承一个类并实现一个接口。

9、内部类可以作为外部类的成员,而且可访问它所在的类的成员。

10、某个非抽象类的父类是抽象类,则这个子类必须重载父类的所有抽象方法。

期中考试模测2

期中考试模测2

1、类变量必须使用的修饰符是( )。
    A、static
    B、final
    C、public
    D、abstract

2、为使下列代码正常运行,应该在下划线处填入的选项是   int[] a=new int[n];   for(int i=0;i<a.____;i++)    a[i]=i+1;
    A、size
    B、length
    C、dimension
    D、count

3、为使下列代码正常运行,应该在下划线【 】处填入的选项是 abstract class Person{ private String name; public Person(String n){ name=n; } public 【 】 String getDescription(); public String getName(){ return name; } }
    A、static
    B、private
    C、abstract
    D、final

期中考试模测3

期中考试模测3

1、11111
    A、a
    B、b
    C、c
    D、d

期末考试模测1

期末考试模测1--客观题部分

1、下列说法正确的是( )
    A、Java程序的 main 方法必须写在类里面
    B、Java程序中可以有多个 main 方法
    C、Java程序中类名必须与文件名一样
    D、Java程序的 main 方法中如果只有一条语句,可以不用 { } 括起来

2、对象的特征在类中表示为变量,称为类的( )。
    A、对象
    B、属性
    C、方法
    D、数据类型

3、一个 Java 源程序中允许有多个公共类。

4、Java 语言的标识符是不区分大小写的。

5、下列程序编译和运行的结果是( )。 public class Example { public static void main(String args[]){ int i = 10; System.out.println+i); } } } A、10 B、20 C、30 D、40

期末考试模测1--主观题部分

1、编程题:求1+2+3+...+100的和?

期末考试模测2

期末考试模测2

1、1+1=( )
    A、1
    B、2
    C、3
    D、4

2、2+3=( )
    A、3
    B、4
    C、5
    D、6

3、1+2=( )
    A、1
    B、2
    C、3
    D、4

期末考试模测2-主观题

1、阅读程序,写出程序运行结果。 * * * * * for(int i=0;i<3;i++) System.out.println(i);

2、以下程序运行结果是输出1↙2↙3↙,请完成程序填空题。 int i; for(【1】;i<4;【2】) 【3】.out.println(i);

3、编程题,求1+2+3+...+100的和。

2019-2020-2《面向对象程序设计B》期末考试

期末考试--客观题部分

1、编译一个定义了3个类和10个方法的Java源文件后,会产生几个字节码文件?扩展名是什么?
    A、13个字节码文件,扩展名为.class
    B、1个字节码文件,扩展名为.class
    C、3个字节码文件,扩展名为.java
    D、3个字节码文件,扩展名为.class

2、下列哪个是合法的标识符?
    A、12class
    B、void
    C、-5
    D、_blank

3、下面不是创建数组的正确语句
    A、float f[][]=new float[6][6];
    B、float f[]=new float[6];
    C、float f[][]=new float[][6];
    D、float[][] f=new float[6][];

4、用于定义类成员的访问控制权的一组关键字是()
    A、class, float, double, public
    B、float, boolean, int, long
    C、char, extends, float, double
    D、public, private, protected

5、下列说法中,错误的一项是
    A、线程就是程序
    B、线程是一个程序的单个执行流
    C、多线程是指一个程序的多个执行流
    D、多线程用于实现并发

6、下面关于接口的说法中不正确的是
    A、接口中所有的方法都是抽象的
    B、接口中所有的方法都是public访问权限
    C、子接口继承父接口所用的关键字是implements
    D、接口是Java中的特殊类,包含常量和抽象方法

7、Java语言提供处理不同类型流的类所在的包是
    A、java.sql
    B、java.util
    C、java.net
    D、java.io

8、自定义异常时,可以通过对下列哪一项进行继承?
    A、Error类
    B、Applet类
    C、Exception类及其子类
    D、AssertionError类

9、下列一般用来作中间容器,完成窗口分块布局的组件是
    A、JButton
    B、JPanel
    C、Canvas
    D、JTextArea

10、下列说法中,错误的一项是
    A、线程一旦创建,则立即自动执行
    B、线程创建后需要调用start()方法,将线程置于可运行状态
    C、调用线程的start()方法后,线程也不一定立即执行
    D、线程处于可运行状态,意味着它可以被调度

11、Java语言具有较好的安全性和可移植性及与平台无关等特性。

12、每个类都只能有一个构造方法。

13、File类的对象可以用来获取文件的一些信息,如文件所在目录、文件长度,读写权限等,还可以用来操作对文件的读写。

14、对象串行化机制是将程序中对象的状态转化为一个字节流。

15、char[] chrArray={ 'a', 'b', 'c', 'd', 'e', 'f', 'g'};char chr = chrArray[6]; 编译无误。

16、一个Java多线程的程序不论在什么计算机上运行,其结果始终是一样的。

17、java.sql包主要用于数据库操作。

18、LinkedList是采用链表结构实现的双向线性表结构。

19、ServerSocket一般用于在服务端口处理客户端的连接请求。

20、类的方法可以定义在类体外。

主观题部分

1、class V1{ int a=1; void m1(){ System.out.print(a); } } class E1 extends V1{ int a=2,b=3,c; void m2(){ System.out.print(a); } } class H{ public static void main(String[] s){ E1 e1=new E1(); e1.m1(); e1.m2(); } } 输出结果是:

2、import java.io.*; public class abc { public static void main(String args[ ]) { AB s = new AB("Hello!",“world”); System.out.println(s.toString( ));} } class AB { String s1; String s2; AB( String str1 , String str2 ) { s1 = str1; s2 = str2; } public String toString( ) { return s1+s2; } } 输出结果:

3、import java.io.* ; public class test { public static void main(String args[ ]) throws Exception { int i , n = 3 , max = 0 , min = 0 , temp = 0; BufferedReader br =new BufferedReader(new InputStreamReader(System.in)); max = min = Integer.parseInt(br.readLine( )); for ( i = 0 ; i <= n ; i ++ ) { temp = Integer.parseInt(br.readLine( )); if (temp > s ) s=temp; if (temp < t) t=temp; } System.out.println("s="+s+"\nt="+t); } } 输入3↙ 24↙ 96↙ 25↙ 输出结果是:

4、import java.util.*; public class Vec{ public static void main(String[] args) { String[] s; s=new String[2]; s[0]=new String("no1"); s[1]=new String("no2"); List<String> v = new LinkedList<String>(); for(int i = 0; i <2; i++) { v.add (s[i]); } Iterator<String> e = v.iterator(); while(e.hasNext()) { System.out.print(e.next()+" "); } } } 输出结果是:

5、程序填空题: 定义LeftHandThread 线程类输出5次"左手线程-正在画圆",在主线程中,创建并启动LeftHandThread ,同时,主线程输出10次"主线程-正在画方"。 class LeftHandThread extends 【 1 】{ public 【 2 】(String name){ super(name); } public void 【 3 】(){ for(int i=0;i<5;i++){ System.out.println(this.getName()+"正在画圆"); } } } public class HandThread { public static void main(String[] args) { LeftHandThread left1=new LeftHandThread("左手线程-"); left1.【 4 】(); for(int i=0;i<10;i++){ System.out.println("【 5 】"); } } }

6、程序填空题: 从数据库student表中查询所有学生并放入ArrayList中。 Connection con=null; Statement stmt=null; ResultSet rs=null; String uri = "jdbc:mysql://localhost:3306/st"; List<Student> list=new ArrayList<Student>(); try { 【 1 】=DriverManager.getConnection(uri,"root",""); 【 2 】=con.createStatement(); rs=stmt.【 3 】(“【 4 】sname,sid,score from student”); while(rs.next()) { Student s=new Student(); s.sname=rs.【 5 】(“sname”); s.sid=rs.【 5 】(“sid”); s.score=rs.getFloat(“score”); list.add(s); } rs.close; stmt.close(); con.close(); } catch(SQLException e) { System.out.println(e.getMessage()); }

7、编程题: 请定义一个交通工具类(Vehicle),其中有: (1)属性:速度(speed)、名称(name) (2)方法:带参数的构造方法、属性的get/set方法、加速方法(speedUp)、减速方法(speedDown) (3)在测试类中实例化一个Vehicle对象,调用加速和减速方法对速度进行改变

8、编程题: 按要求定义如下功能的窗口:文本框中输入数值,单击“平方”按钮实现对文本框中数值求平方的功能,并将结果用标签显示在窗口中。