大学JAVA期末考试试题带答案
中考总分-徐州中考网
《JA V A程序设计》期末考试试题(三
一、单项选择题
1、如下哪个是Java中的标识符(D
A、public
B、super
C、3number
D、width
2、如下哪个是Java中的标识符(A
A、fieldname
B、super
C、3number
D、#number
3、已知如下定义:String s = 下面哪个语句不是合法的(
C
A、s +=
B、s = s + 100;
C、int len =
D、String t = s + “abc”;
4、如下哪个是Java中有效的关键字( C
A、name
B、hello
C、false
D、good
5、下面的代码段执行之后count的值是什么( D
int count = 1;
for (int i = 1; i <= 5; i++ {
count += i;
}
n(count;
A、5
B、1
C、15
D、16
6、定义一个类,必须使用的关键字是( B
A、public
B、class
C、interface
D、static
7、定义一个接口必须使用的关键字是(C
A、public
B、class
C、interface
D、static
8、如果容
器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应
该使用的语句是(C
A、(b;
B、(b,
C、(b,
D、(p,
9、声明并创建一个
按钮对象b,应该使用的语句是(A
A、Button b=new Button(;
B、button b=new button(;
C、Button b=new b(;
D、el(“确定”;
10、Frame对象默认的布局管理器是(B
A、FlowLayout
B、BorderLayout
C、CardLayout
D、null
11、下列哪一个import命令可以使我们在程序中创建输入输出流对象(C
A、import .*;
B、import .*;
C、import .*;
D、import .*;
12、下面哪一个import命令可以为我们提供编写网络应用程序的类(D
A、import .*;
B、import .*;
C、import .*;
D、import .*;
13、如果需要从文件中读取数据,则可以在程序中创建哪一个类的对象(A
A、FileInputStream
B、FileOutputStream
C、DataOutputStream
D、FileWriter
二、填空题
1、如果将类MyClass声明为public,它的文件名称必须是(才能正
常编译。
2、Java程序中的单行注释符是(,多行注释符是(* * 。
3、Java中布尔类型的常量有两种,它们是(true和(false。
4、Java中用于定义小数的关键字有两个:(float和(double,后者精度高于前者。
5、Java中用于两个数相等比较的运算符是:(==,用于不相等比较的运算符是
(<>。
6、在Java中定义一个字符串类型的变量str的语句是:(String
str;,定义一个具
有10个元素的整型数组a的语句是:(int [] arr = new
int[10];。
7、导入mypackage包中的所类的命令是(import
mypackage.*;。
8、当声明一个数组int arr[] = new int[5];
时,这代表这个数组所保存的变量类型
是(int,数组名是(arr,数组的大小为(5,数组元素下
标的使用范围是(0到4。
9、假设x=13,y=4,则表达式x%y !=
0的值是(true,其数据类型是(boolean。
10、异常处理是由(try、(catch和finally块三个关键所组成的程序块。
四、简答题
1、简述Java中异常处理的机制?
答:首先Java的异常是面向
对象的。一个Java的Exception是一个描述异常情
况的对象.当出现异常情况时,一个Ex
ception对象就产生了,并放到异常的成员函数
里。
Java的异常处理是通过5个关
键词来实现的:try,catch,throw,throws和finally。
1.异常处理:
在Java语言的错误处理结构由try,catch,finally三个块组成。其中
try块存放
将可能发生异常的Java语言,并管理相关的异常指针;catch块紧跟在try块
后面,用来激发被捕获的异常;finally块包含清除程序没有释放的资源,句柄等。不管
try块
中的代码如何退出,都将执行finally块。
2.抛出异常:Java语言可以不在方法中直接捕
获,而用throw语句将异常抛给上
层的调用者。Throw语句就是来明确地抛出一个异常;首先你
必需得到一个
Throwable的实例句柄,通过参数传到catch中,或者采用new操作符来创
建一个。
2、什么是继承?
答:通过必要的说明能够实现某个类无需重新定义就拥有另一个
类的某些属性
和方法,并把这种关系称为继承,先定义的类称为父类,后定义的类称为子类,并且允许<
br>多层的继承关系。
3、请简述重载和重写的区别?
答:方法的重写Overriding和重载Overloading是Java多态性的不同表现。
重写Overriding是父类与子类之间多态性的一种表现,重载Overloading
是一个
类中多态性的一种表现。
如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写
(Overri
ding。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的
定义如同被“屏蔽”
了。
如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的
参数类型,
则称为方法的重载(Overloading。Overloaded的方法是可以改变返回值的
类型。
五、程序设计题
1、按以下要求编写程序
(1
创建一个Rectangle类,添加width和height两个成员变量
(2
在Rectangle中添加两种方法分别计算矩形的周长和面积
(3
编程利用Rectangle输出一个矩形的周长和面积
解答:
public class
Rectangle {
float width, height;
public
Rectangle(float width, float height {
=
width;
= height;
}
public float
getLength({
return ( + * 2;
}
public
float getArea({
return *
}
public
static void main(String [] args {
Rectangle
rect = new Rectangle(10, 20;
n(周长是:
n(面积是:
}
}
2、按以下要求编写程序
(1 编写Animal接口,接口中声明run( 方法
(2 定义Bird类和Fish类实现Animal接口
(3
编写Bird类和Fish类的测试程序,并调用其中的run(方法解答:
public
interface Animal {
void run(;
}
class
Bird implements Animal {
public void run( {
n(鸟儿在飞...
}
}
class Fish implements
Animal {
public void run( {
n(鱼儿在游...
}
}
public class TestAnimal {
public static void main(String[] args {
Bird bird = new Bird(;
(;
Fish fish =
new Fish(;
(;
}
}
3、编写一个Frame框架应用程序,要求如下:
(1
在窗口设置两个菜单“文件”、“编辑”
(2
在“文件”菜单里添加三个菜单项“打开”、“保存”、“关闭”
(3
在“编辑”菜单里添加两个菜单项“复制”、“粘贴”
(4 点击关闭菜单项时,使程序关闭。
解答:
import
import
import
import r;
import em;
import
Event;
import Listener;
import Adapter;
import Event;
*
* 主窗体
*
public
class MyFrame extends Frame {
private static
final long serialVersionUID =
6895463895656626294L;
private Frame frmMain;
窗体
MenuBar mb; 菜单栏
Menu mnuFile; 文件菜单
Menu mnuEdit; 编辑菜单
MenuItem miOpen;
打开菜单项
MenuItem miSave; 保存菜单项
MenuItem
miClose; MenuItem miCopy; MenuItem miPaste; public
MyFrame( {
关闭菜单项 复制菜单项 粘贴菜单项 frmMain = new
Frame(主窗体创建
菜单栏 mb = new MenuBar(; 创建菜单
mnuFile = new Menu(文件
Menu(编辑创建菜单项 miOpen = new
MenuItem(打开
MenuItem(保存关闭复制
miPaste =
new MenuItem(粘贴
ation(100, 100; kground(;
ible(true; out(null; dowListener(new
WindowHandler(; 注册窗口监听器 将菜单栏放入窗体中 uBar(mb;
将菜单放入菜单栏中 (mnuFile; (mnuEdit; 将菜单项放入菜单中
(miOpen; (miSave; (miClose; (miCopy;
(miPaste; 注册动作事件监听器
ionCommand(
MenuHandler(; }
定义一个内部类,在这个类中编写窗口关闭事件处理程序。
private class
WindowHandler extends WindowAdapter { public void
windowClosing(WindowEvent e { (0; 退出应用程序,状态码
0 表示正常
终止,非 0 表示异 常终止。 } }
定义一个内部类,在这个类中编写动作事件处理
程序。 private class
MenuHandler implements ActionListener { public
void
actionPerformed(ActionEvent e { if
(ionCommand( ==
{ (0; 退出应用程序 } } } } public
class TestMyFrame { public static void
main(String[] args { 启动主窗体 MyFrame guiWindow
= new MyFrame(;
ame(; } }
《JA
V A程序设计》期末考试试题(三
一、单项选择题
1、如下哪个是Java中的标识符(D
A、public
B、super
C、3number
D、width
2、如下哪个是Java中的标识符(A
A、fieldname
B、super
C、3number
D、#number
3、已知如下定义:String s = 下面哪个语句不是合法的(
C
A、s +=
B、s = s + 100;
C、int len =
D、String t = s + “abc”;
4、如下哪个是Java中有效的关键字( C
A、name
B、hello
C、false
D、good
5、下面的代码段执行之后count的值是什么( D
int count = 1;
for (int i = 1; i <= 5; i++ {
count += i;
}
n(count;
A、5
B、1
C、15
D、16
6、定义一个类,必须使用的关键字是( B
A、public
B、class
C、interface
D、static
7、定义一个接口必须使用的关键字是(C
A、public
B、class
C、interface
D、static
8、如果容
器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应
该使用的语句是(C
A、(b;
B、(b,
C、(b,
D、(p,
9、声明并创建一个
按钮对象b,应该使用的语句是(A
A、Button b=new Button(;
B、button b=new button(;
C、Button b=new b(;
D、el(“确定”;
10、Frame对象默认的布局管理器是(B
A、FlowLayout
B、BorderLayout
C、CardLayout
D、null
11、下列哪一个import命令可以使我们在程序中创建输入输出流对象(C
A、import .*;
B、import .*;
C、import .*;
D、import .*;
12、下面哪一个import命令可以为我们提供编写网络应用程序的类(D
A、import .*;
B、import .*;
C、import .*;
D、import .*;
13、如果需要从文件中读取数据,则可以在程序中创建哪一个类的对象(A
A、FileInputStream
B、FileOutputStream
C、DataOutputStream
D、FileWriter
二、填空题
1、如果将类MyClass声明为public,它的文件名称必须是(才能正
常编译。
2、Java程序中的单行注释符是(,多行注释符是(* * 。
3、Java中布尔类型的常量有两种,它们是(true和(false。
4、Java中用于定义小数的关键字有两个:(float和(double,后者精度高于前者。
5、Java中用于两个数相等比较的运算符是:(==,用于不相等比较的运算符是
(<>。
6、在Java中定义一个字符串类型的变量str的语句是:(String
str;,定义一个具
有10个元素的整型数组a的语句是:(int [] arr = new
int[10];。
7、导入mypackage包中的所类的命令是(import
mypackage.*;。
8、当声明一个数组int arr[] = new int[5];
时,这代表这个数组所保存的变量类型
是(int,数组名是(arr,数组的大小为(5,数组元素下
标的使用范围是(0到4。
9、假设x=13,y=4,则表达式x%y !=
0的值是(true,其数据类型是(boolean。
10、异常处理是由(try、(catch和finally块三个关键所组成的程序块。
四、简答题
1、简述Java中异常处理的机制?
答:首先Java的异常是面向
对象的。一个Java的Exception是一个描述异常情
况的对象.当出现异常情况时,一个Ex
ception对象就产生了,并放到异常的成员函数
里。
Java的异常处理是通过5个关
键词来实现的:try,catch,throw,throws和finally。
1.异常处理:
在Java语言的错误处理结构由try,catch,finally三个块组成。其中
try块存放
将可能发生异常的Java语言,并管理相关的异常指针;catch块紧跟在try块
后面,用来激发被捕获的异常;finally块包含清除程序没有释放的资源,句柄等。不管
try块
中的代码如何退出,都将执行finally块。
2.抛出异常:Java语言可以不在方法中直接捕
获,而用throw语句将异常抛给上
层的调用者。Throw语句就是来明确地抛出一个异常;首先你
必需得到一个
Throwable的实例句柄,通过参数传到catch中,或者采用new操作符来创
建一个。
2、什么是继承?
答:通过必要的说明能够实现某个类无需重新定义就拥有另一个
类的某些属性
和方法,并把这种关系称为继承,先定义的类称为父类,后定义的类称为子类,并且允许<
br>多层的继承关系。
3、请简述重载和重写的区别?
答:方法的重写Overriding和重载Overloading是Java多态性的不同表现。
重写Overriding是父类与子类之间多态性的一种表现,重载Overloading
是一个
类中多态性的一种表现。
如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写
(Overri
ding。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的
定义如同被“屏蔽”
了。
如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的
参数类型,
则称为方法的重载(Overloading。Overloaded的方法是可以改变返回值的
类型。
五、程序设计题
1、按以下要求编写程序
(1
创建一个Rectangle类,添加width和height两个成员变量
(2
在Rectangle中添加两种方法分别计算矩形的周长和面积
(3
编程利用Rectangle输出一个矩形的周长和面积
解答:
public class
Rectangle {
float width, height;
public
Rectangle(float width, float height {
=
width;
= height;
}
public float
getLength({
return ( + * 2;
}
public
float getArea({
return *
}
public
static void main(String [] args {
Rectangle
rect = new Rectangle(10, 20;
n(周长是:
n(面积是:
}
}
2、按以下要求编写程序
(1 编写Animal接口,接口中声明run( 方法
(2 定义Bird类和Fish类实现Animal接口
(3
编写Bird类和Fish类的测试程序,并调用其中的run(方法解答:
public
interface Animal {
void run(;
}
class
Bird implements Animal {
public void run( {
n(鸟儿在飞...
}
}
class Fish implements
Animal {
public void run( {
n(鱼儿在游...
}
}
public class TestAnimal {
public static void main(String[] args {
Bird bird = new Bird(;
(;
Fish fish =
new Fish(;
(;
}
}
3、编写一个Frame框架应用程序,要求如下:
(1
在窗口设置两个菜单“文件”、“编辑”
(2
在“文件”菜单里添加三个菜单项“打开”、“保存”、“关闭”
(3
在“编辑”菜单里添加两个菜单项“复制”、“粘贴”
(4 点击关闭菜单项时,使程序关闭。
解答:
import
import
import
import r;
import em;
import
Event;
import Listener;
import Adapter;
import Event;
*
* 主窗体
*
public
class MyFrame extends Frame {
private static
final long serialVersionUID =
6895463895656626294L;
private Frame frmMain;
窗体
MenuBar mb; 菜单栏
Menu mnuFile; 文件菜单
Menu mnuEdit; 编辑菜单
MenuItem miOpen;
打开菜单项
MenuItem miSave; 保存菜单项
MenuItem
miClose; MenuItem miCopy; MenuItem miPaste; public
MyFrame( {
关闭菜单项 复制菜单项 粘贴菜单项 frmMain = new
Frame(主窗体创建
菜单栏 mb = new MenuBar(; 创建菜单
mnuFile = new Menu(文件
Menu(编辑创建菜单项 miOpen = new
MenuItem(打开
MenuItem(保存关闭复制
miPaste =
new MenuItem(粘贴
ation(100, 100; kground(;
ible(true; out(null; dowListener(new
WindowHandler(; 注册窗口监听器 将菜单栏放入窗体中 uBar(mb;
将菜单放入菜单栏中 (mnuFile; (mnuEdit; 将菜单项放入菜单中
(miOpen; (miSave; (miClose; (miCopy;
(miPaste; 注册动作事件监听器
ionCommand(
MenuHandler(; }
定义一个内部类,在这个类中编写窗口关闭事件处理程序。
private class
WindowHandler extends WindowAdapter { public void
windowClosing(WindowEvent e { (0; 退出应用程序,状态码
0 表示正常
终止,非 0 表示异 常终止。 } }
定义一个内部类,在这个类中编写动作事件处理
程序。 private class
MenuHandler implements ActionListener { public
void
actionPerformed(ActionEvent e { if
(ionCommand( ==
{ (0; 退出应用程序 } } } } public
class TestMyFrame { public static void
main(String[] args { 启动主窗体 MyFrame guiWindow
= new MyFrame(;
ame(; } }