文档库 最新最全的文档下载
当前位置:文档库 › Java综合习题

Java综合习题

Java综合习题
Java综合习题

一单选题

1.下列哪个属于Java的合法标识符()

a._cat

b.5books

c.+static

d.-3.14

2.Java“一次编译,随处运行”的特点在于其()

a.跨平台性

b.面向对象型

c.多线程性

d.安全性

3.Java属于()型语言。

a.解释

b.编译

c.多线程性

d.安全性

4.Java源文件和编译后的文件扩展名分别为()

a.class 和java

b.java 和class

c.class和class

d.java和java

5.对于类的说法,不正确的一项是( )

a.一般类体的域包括常量、变量、数组等独立的实体。

b.类中的每个方法都由方法头和方法体构成

c.Java程序中可以有多个类,但是公共类只有一个

d.Java程序可以有多个公共类

6.设数组Array由以下语句定义int age=new int[10];则数组的第一个元素的正确引用方法为()

a.age[0]

b.Age[0]

c.age[1]

d.age[1]

7.下列关于类和对象的描述中,不正确的一项是()

a.现实世界中,可以把每件事物都看做一个对象

b.一组对象构成一个程序,对象之间通过发消息通知彼此该做什么

c.有共同属性的对象可以抽象为一个类

d.一个类只能实例化一个对象

8.下列说法中,不正确的一项是()

a.Java程序只有两类:Application和Applet

b.类的方法只能由public修饰

c.面向对象的程序设计的优点有可重用性、可扩展性、可管理性

d.Java语言通过接口支持多重继承

9.定义主类的类头时可以使用的访问控制符是()

a.public

b.protected

c.private

d.protected

10.Java语言的类间继承关系是()。

a.多重的

b.单重的

c.线程的

d.不能继承

11.下列()不是面向对象程序设计方法的特点。

a.抽象

b.继承

c.多态

d.结构化

12.下面是关于类及其修饰符的一些描述,不正确的是()。

A.abstract类只能用来派生子类,不能用来创建abstract类的对象

B.abstract不能与final同时修饰一个类

C.final类不但可以用来派生子类,也可以用来创建final类的对象

D.abstract方法必须在abstract类中声明,但abstract类定义中可以没有abstract方法

13.main()方法是Java Application程序执行的入口点,关于main()方法的方法头,下面()是合法的。

A.public static void main ()

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

C.public static int main (String [ ] args)

D.public void main (String args[ ])

14.下列描述中,()通常不属于finally子句执行的功能。

A.释放资源

B. 关闭文件

C. 分配资源

D. 关闭数据库

15.以下关于抽象类和接口的说法正确的是()。

A.抽象类可以用来定义接口

B.定义抽象类时需要abstract

C.抽象类中的所有方法都是具体的

D.抽象类可以是对接口的实现

16.假定一个类的构造方法为A( int aa, int bb) { a=aa; b=aa*bb; }, 则执行“A x=new A (4,5);”语句后,x,a和x,b的值分别是()。

A.4和5

B. 5和4

C. 4和20

D. 20和5

17.下列哪个类声明是正确的?

a. abstract final class HI{···}

b. abstract private move(){···}

c. protected private number;

d. public abstract class Car{···}

18.异常包含下列那些内容()

a.程序中的语法错误

b.程序的编译错误

c.程序执行过程中遇到的事先没有预料到的情况

d.程序事先定义好的可能出现的意外情况

19.在java中,负责对字节代码解释执行的是()

a.垃圾回收器

b.虚拟机

c.编译器

d.多线程机制

20.Applet可以做下列那些操作()

a.读取客户端文件

b.在客户端主机上创建新文件

c.在客户端装载程序库

d.读取客户端部分系统变量

21.下列哪个属于容器的构件()

a.JFrame

b.JButton

c.JPanel

d.JApplet

22 类panel默认的布局管理器是()

a.CardLayout

b.GridLayout

c.BorderLayout

d.FlowLouLayout

23.java为移动设备提供平台的是()

a.j2me

b.j2ee

c.j2se

d.jdk

24.在Applet中,显示文字、图形等信息时,应使用的方法是()

a.paint()

b.init()

c.start()

d.destroy()

25.Thread类中能运行线程体的方法是()

a. start()

b. resume()

c. init() d . run()

26.编写AWT图形用户程序的时候,一定要用到import的语句是()。

A.import java.awt;

B. import java.awt.*;

C .import javax.awt.*; D. import javax .swing.*;

27.下列说法中,错误的一项是()。

A.Swing构件可以直接添加到顶层容器之中

B.内容面板是一个轻量级构件,它是顶层容器所包含的普通容器

C.根面板由一个玻璃面板、一个内容面板和一个可选的菜单条组成

D.玻璃面板可以用于接收鼠标事件

28下列不属于java.awt包中的基本概念的一项是()

A.容器

B. 构件

C. 线程

D. 布局管理器

29.下列说法中错误的一项是()

https://www.wendangku.net/doc/e12727642.html,youtManager是一个接口,编程时通常使用的是实现该接口的类

B.布局管理器体现了Java平台无关性

C.每个容器都对应一个布局管理器

D.在Java中,必须直接设置构件在容器中的位置和构件的大小

30.下列关于Swing和AWT的说法中错误的一项是()

A.Swing 通常包含轻质组件

B.AWT通常包含重质组件

C.Swing组件的运行效果可以保持与平台的无关性

D.Swing可以完全脱离A WT存在

31.下列()不属于AWT布局管理器。

A.GridLayout

B. CardLayout

C. BorderLayout

D. BoxLayout

32.下列说法中,错误的一项是()

A.在Java中,若要处理某类事件,必须定义相关的事件处理类

B.在对事件源实例化之后,要注册相应事件的监听器

C.事件处理类必须实现与该类事件相对应的监听器接口

D.事件源通常是一个构件,也称做监听器

33.下列说法中,错误的一项是()

A.内部类是被定义于另一个类中的类

B.使用内部类实现监听器,在编程时比较容易实现

C.内部类对象可以访问外部类的成员方法和变量,包括私有成员

D.由于内部类定义于另一个类,因此不适用于AWT的事件处理机制

34.下列Swing构件中,属于中间容器的一项是()

A.JFrame

B. JToolbar

C. JLabel

D. JButton

35.在类中若要处理ActionEvent事件,则该类需要实现的接口是( A )

A.ActionListener

B. Runnable

C. Serializable

D. Event

36..使用JDBC的主要好处是(C)

A.它是一个简单、易用的数据库管理系统

B.允许开发者不用改变程序代码就可以改变底层的数据库

C.它是多平台的数据库管理系统

D.它能为数据库管理系统提供了一个图形用户界面

37.初始状态下,ResultSet的指针初始位置在(A)

A.第一行之前

B.第一行

C.最后一行

D.最后一行之后

二、填空题

1.在Java中,抽象类不能___实例化_____。

2.在Java语言中,可以通过___throw_____语言将异常向上级调用方法抛出。

3.用户定义异常是通过继承___Exception______类及___Throwable______类来创建的。

4.在Java语言中,用___try , catch , finally_____________语句来处理异常。

5.接口中的方法只能是___抽象的________。

1.Java所有类的父类是___Object______。

2.流类处理的是文件的___内容______,Flie类处理的是文件在磁盘上的___存储______。

3.___File_________类时java.io包里的一个重要的非流类,封装了操作文件系统的功能。

4.编写事件监听器的时候,采用___内部类____和___匿名类_____编写可以很容易实现。

5.Panel既是___容器________,又是___构件_________。

6.为了支持Java程序的数据库操作功能,Java语言采用了专门的Java数据库编程接口API,

叫做___JDBC________。

7.利用Class类的___forName__静态方法加载要使用的JDBC驱动程序。

8.利用DriverManager类的__ getConnection________静态方法创建数据库连接。

6.JDBC API中的类和接口存在于___ java.sql 和javax.sql________包中。

9.利用https://www.wendangku.net/doc/e12727642.html,类访问已经建立连接的数据库。

10.多线程程序运行期间,至少有2个线程被启动。

三、简答题

1.简述面向对象的特征?

1.封装;

2.继承;

3.多态。

2. 简述创建线程的两种方式?

1.继承Thread类,复写run方法,创建该类对象,调用start方法开启线程。

2.实现Runnable接口,复写run方法,创建该类对象,将该对象当作参数传给Thread 类的构造方法,再创建Thread类对象,使用Thread类对象调用start方法开启线程。

3.Java 规定类中的成员变量和方法具有4种访问控制符?哪四种?请列出。

public , protected , friendly , private。

四、应用题

1.用Java Application编写一个程序,输出你的学号和姓名。

public class Student {

public static void main(String[] args) {

System.out.println("学号: 1234567890\n");

System.out.println("姓名:张三\n");

}

}

2.编写程序,定义一个类实现银行账户的概念,包括的变量有“账号”和“存款余额”,包

括的方法有存款、取款、查询余额,定义主类,创建账户类的对象,并完成相应操作。import java.util.Scanner;

public class Account {

private String userID; //账户

private double balance; //余额

public Account(String userID,double balance) {

https://www.wendangku.net/doc/e12727642.html,erID = userID;

this.balance = balance;

}

public String Deposit (double money) { //存款方法

balance += money;

System.out.println("存款成功,存入" + money + "元");

return null;

}

public String Draw (double money) { //取款方法

if (balance >= money) {

balance -= money;

System.out.println("取款成功,取出" + money + "元");

}else {

System.out.println("取款失败,余额不足!");

}

return null;

}

public String Check () { //查询方法

return "当前余额" + balance + "元";

}

public static void main(String[] args)

{

Scanner input =new Scanner (System.in);

Account lucy = new Account("lucy",10);

Account jack = new Account("jack",10);

System.out.println("lucy" + lucy.Check());

System.out.println("jack" + jack.Check());

System.out.print("lucy存多少?");

double money = input.nextDouble();

lucy.Deposit(money);

System.out.println("lucy" + lucy.Check());

System.out.print("jack取多少?");

money = input.nextDouble();

jack.Draw(money);

System.out.println("jack" + jack.Check());

}

}

相关文档