《JAVA面向对象程序设计》试题与解析库 联系客服

发布时间 : 星期三 文章《JAVA面向对象程序设计》试题与解析库更新完毕开始阅读cf0d7d3f87c24028915fc38b

34) JAVA中,欲返回按钮的标签,其方法是()。(选择一项)

a) getActionCommand() b) setLabel(string str) c) button()

d) getLabel() 【解析】A

欲返回按钮的标签使用getActionCommand()方法。

35) 在JAVA中,假设我们有一个实现ActionListener接口的类,以下方法,()能够为一

个Button类注册这个类。(选择一项) a) addListener() b) addActionListener()

c) addButtonListener() d) setListener() 【解析】B

Swing的事件模型中,组件可以发起(或\射出\事件[译注1]。各种事件都是

类。当有事件发生时,一个或多个\监听器(listener)\会得到通知,并做出反应。这样事件的来 源就同它的处理程序分隔开来了。一般说来,程序员是不会去修改Swing组件的,他们写的都是些事件处理程序,当组件收到事件[译注1]时,会自动调用这些代码,因此Swing的事件模型可称得上是将接口与实现分隔开来的绝好范例了。

事件监听器(event listener)就是一个实现listener接口的对象。所以,程序员要做的就是创建一个listener对象,然后向发起事件的组件注册这个对象。注册的过程就是调用组件的addXXXListener( )方法,这里\表示组件所发起的事件的类型。只要看一眼\方法的名字就能知道组件能处理哪种事件了,所以如果你让它听错了事件,那么编译就根本通不过。到后面你就会看到,JavaBean在决定它能处理哪些事件时,也遵循\的命名规范。

36) 在JAVA语言中,包pack1的类class1 中有成员方法:protected void

method_1(){?},private void method_2(){?},public void method_3(){?.}和void method_4(){?},在包pack2中的类class2 不是class1的子类,你在class2 中可以调用的方法有()。(选择一项) a) method_1 b) method_2 c) method_3 d) method_4 【解析】C

本题可以通过画出包中类的结构来分析:

pack1: class1 : 受保护的method_1 method_4 私有的method_2 公共的method_3(); pack2: class2:

由于class2和class1 之间没有继承关系;故 class2只能调用class1种的public修饰的方法: method_3().

37) JAVA中,使用()修饰符时,一个类能被同一包或不同包中的其他类访问。(选择一项)

a) private

b) protected c) public d) friendly 【解析】C

Public 访问修饰符,该类所在包内和包外的类都可以访问。最开放。

Protected访问修饰符,只有该类所在包内或它的派生类才能访问。 Private访问修饰符 ,只有该类所在包内的类才能访问。 Java中无friendly修饰符。

38) 在JAVA中,类Worker是类Person的子类,Worker的构造方法中有一句“super()“,

该语句()。(选择一项)

a) 调用类Worker中定义的super()方法 b) 调用类Person中定义的super()方法 c) 调用类Person的构造函数 d) 语法错误 【解析】C

有些时候经常需要在子类中调用父类的构造方法,此时需用super方法来调用。

39) 在JAVA语言中,下列语言()可以画出一矩形框架,其距左边界为0像素,距上边界

为10像素,宽为30像素,高为40像素。(选择一项)

a) Graphics g=new Graphics();

g.drawRect(10,0,30,40); b) Graphics g=new Graphics();

g.drawRect(0,10,30,40);

c) Graphics g =new Graphics(); g.drawRect(30,40,10,0)

d) Graphics g =new Grphics(); g.drawRect(30,40,0,10);

【解析】B

Graphics类的方法drawRect的语法如下: public void drawRect(int x,

int y, int width, int height)

绘制指定矩形的轮廓。矩形的左边和右边分别为 x 和 x + width 。顶部边沿和底部边沿分别为 y 和 y + height 。该矩形是使用图形上下文的当前颜色绘制的。 参数:

x - 将被绘制的矩形的 x 坐标。 y - 将被绘制的矩形的 y 坐标。

width - 将被绘制的矩形的宽度。 height - 将被绘制的矩形的高度 故本题选 B

40) 在JAVA中,类Animal中的方法printA()定义如下:

public void printA(){

int a=10;

int result=10%3;

System.out.println(result); 在类Dog中方法printA()定义如下: public void printA(){

int a=10;

Systme.out.println(a/3); }

Dog类的定义如下:

Class Dog extends Animal{?} 若有语句:

Animal animal=new Dog(); animal.printA();

则这段代码输出为()。(选择一项) a) 0 b) 3.3333 c) 2 d) 3 【解析】B

本题关键要理解如何使父类的对象调用子类的方法。因为通常都是子类调用父类的方法。

Animal animal=new Dog();

此处虽然声明的是父类Animal类型的对象,但在初始化时调用的是子类的构造方法。正是因为此,使得animal对象指向Dog类的引用。该对象animal在调用printA()方法时不是调用父类的方法,而是调用在子类中重写的printA()方法。故本题执行10/3=3.3333.

41) 在JAVA中,下列()代码段允许按钮注册一个action事件。(选择一项)

a) button.enableActioinEvents();

b) button.addActionListener(anActionListener); c) button.enableEvents(true);

d) button.enableEvents(AWTEvent.ACTION_EVENT_MASK); 【解析】B

Swing的事件模型中,组件可以发起(或\射出\事件[译注1]。各种事件都是类。当有事件发生时,一个或多个\监听器(listener)\会得到通知,并做出反应。这样事件的来 源就同它的处理程序分隔开来了。一般说来,程序员是不会去修改Swing组件的,他们写的都是些事件处理程序,当组件收到事件[译注1]时,会自动调用这些代码,因此Swing的事件模型可称得上是将接口与实现分隔开来

的绝好范例了。

事件监听器(event listener)就是一个实现listener接口的对象。所以,程序员要做的就是创建一个listener对象,然后向发起事件的组件注册这个对象。注册的过程就是调用组件的addXXXListener( )方法,这里\表示组件所发起的事件的类型。只要看一眼\方法的名字就能知道组件能处理哪种事件了,所以如果你让它听错了事件,那么编译就根本通不过。到后面你就会看到,JavaBean在决定它能处理哪些事件时,也遵循\的命名规范。

42) 在JAVA编程中,实现Runnable接口时必须实现的方法是()。(选择一项)

a) wait() b) run() c) stop()

d) start() 【解析】B

这是在JBuild中的工程中的main方法。程序从此处开始运行,需要运行进程。此处调用了Runnable接口的run方法,并对该方法进行了重写。

public static void main(String[] args) {

SwingUtilities.invokeLater(new Runnable() { public void run() { try {

UIManager.setLookAndFeel(UIManager. getSystemLookAndFeelClassName());

} catch (Exception exception) { exception.printStackTrace(); }

Runnable接口有一个最重要的方法run,在进程要运行时,必须实现该方法。

43) 在JAVA语言中,下面关于类的描述正确的是()。(选择一项)

a) 一个子类可以有多个超类

b) 一个超类可以有多个子类

c) 子类可以使用超类的所有

d) 子类一定比超类有更多的成员方法 【解析】B

Java语言中只能实现单重继承,也就是一个子类只能有一个父类。如果要实现多重继承,只能使用接口来实现。因为一个子类可以实现多重接口。

一个超类可以派生出多个子类。 子类的方法不一定就比父类多。

44) Java Applet的三种状态:1.Init(),2.Start(),3.Paint(),在Applet载入时的顺序是

()。(选择一项) a) 1,2,3 b) 2,1,3