西南大学秋面向对象程序设计作业及答案.docx

上传人:b****7 文档编号:9123978 上传时间:2023-02-03 格式:DOCX 页数:25 大小:30.78KB
下载 相关 举报
西南大学秋面向对象程序设计作业及答案.docx_第1页
第1页 / 共25页
西南大学秋面向对象程序设计作业及答案.docx_第2页
第2页 / 共25页
西南大学秋面向对象程序设计作业及答案.docx_第3页
第3页 / 共25页
西南大学秋面向对象程序设计作业及答案.docx_第4页
第4页 / 共25页
西南大学秋面向对象程序设计作业及答案.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

西南大学秋面向对象程序设计作业及答案.docx

《西南大学秋面向对象程序设计作业及答案.docx》由会员分享,可在线阅读,更多相关《西南大学秋面向对象程序设计作业及答案.docx(25页珍藏版)》请在冰豆网上搜索。

西南大学秋面向对象程序设计作业及答案.docx

西南大学秋面向对象程序设计作业及答案

面向对象程序设计

1、阅读下面的程序:

该程序运行的输出结果是:

()

A.eace

B.PEACE

C.ecaep

D.ECAEP

此题参考答案:

C

2、阅读下面的程序:

该程序运行的输出结果是:

()

A.09ABCDEF

B.ABCDEF09

C.09abcdef

D.fedcba10

此题参考答案:

D

3、阅读下面的程序:

该程序运行的输出结果是:

()

A.12248

B.224832

C.1441664

D.12624120

此题参考答案:

D

4、阅读下面程序:

该程序运行的输出结果是:

()

A.sum=6

B.sum=32

C.sum=64

D.sum=12

此题参考答案:

B

5、从开始执行到执行终止,小应用程序经历的3个状态别离是:

()

A.初始态、就绪态,终止态

B.就绪态、运行态,停止态

C.初始态、运行态,停止态

D.就绪态、运行态,休眠态

此题参考答案:

C

6、以下关于Java小应用程序(Applet)的说法中,正确的选项是:

()

A.类是所有Java小应用程序的基类

B.Java小应用程序不需要编译

C.Java小应用程序也需要main()方式

D.Java小应用程序必需实现ActionListener接口

此题参考答案:

A

7、Swing的三个顶层容器别离是:

()

A.JApplet,JPanel,JWindow

B.JDialog,JApplet,JFrame

C.JApplet,JFrame

D.JMenu

E.JFrame,JPanel,JTextArea

此题参考答案:

B

8、把容器划分为东、西、南、北、中5个区域的布局治理器是:

()

A.BoxLayout

B.FlowLayout

C.ardLayout

D.BorderLayout

此题参考答案:

D

9、以下语句序列执行以后,b1,b2,b3,b4的值别离是:

()

Strings1="peace";

Strings2=newString(s1);

Strings3=s2;

Strings4=newString("PEACE");

booleanb1=(s1==s2);

booleanb2=(s2);

booleanb3=(s3==s2);

booleanb4=(s3);

A.true,true,false,false

B.false,true,true,true

C.false,true,true,false

D.false,true,false,false

此题参考答案:

C

10、以下构造String的语句中,不正确的选项是:

()

A.Stringstr2="";

B.Stringstr1=newString();

C.Stringstr4=""+123;

D.Stringstr3=newString(123);

此题参考答案:

D

11、以下关于构造方式的说法中,不正确的选项是:

()

A.构造方式用于创建类的实例

B.构造方式不能够重载

C.构造方式不具有返回值类型

D.构造方式名必需和类名相同

此题参考答案:

B

12、既能作为类的修饰符,也能作为类成员的修饰符的是()

A.public

B.extends

C.void

D.static

此题参考答案:

A

13、执行完以下语句后,变量x的值是()

intx=7,y=10;

switch(x/y){

case0:

x++;

case7:

x*=y;

case14:

x+=y;break;

default:

x%=y;

}

A.8

B.70

C.80

D.90

此题参考答案:

D

14、以下由for语句组成的循环的执行次数是:

()

for(inti=0;i<=0;i=i);

A.有语法错,不能执行

B.一次也不执行

C.执行1次

D.无穷次

此题参考答案:

D

15、设有概念inti=7;charch="b";下面赋值语句中不正确是:

()

A.i=ch;

B.ch=i;

C.ch=(char)i;

D.i=(int)ch;

此题参考答案:

B

16、设有概念inti=80,j=7;doubled=;那么以下语句中正确的赋值语句是:

()

A.i+j=(int)d;

B.i=d;

C.i=(int)d+j;

D.j=(int)i-d;

此题参考答案:

C

17、以下关于Java语言的表达错误的选项是:

()

A.Java是最纯粹的面向对象语言,对面向对象方式学的支持也最全面

B.Java是说明执行的语言,由Java说明器负责将Java源文件说明为机械码执行

C.Java是平台无关的,即Java程序不用修改就能够够在不同类型的运算机平台上运行

D.Java提供了大量功能丰硕的可重用类库,有效减少了编程的工作量

此题参考答案:

B

18、Java语言具有许多优势和特点,以下选项中,哪个反映了Java程序“一次编写,处处运行”的特点:

()

A.多线程

B.与平台无关

C.面向对象

D.散布式

此题参考答案:

B

19、以下选项中,用于声明实现一个接口关键字是:

()

A.interface

B.implements

C.import

D.abstract

此题参考答案:

B

20、以下不属于Java语言关键字的是()

A.repeat

B.try

C.break

D.new

此题参考答案:

A

21、以下字符序列中能够作为Java语言标识符的是()

A.true

B.123_xyz

C.

D._x123

此题参考答案:

D

22、以下字符序列中不能作为Java语言标识符的是()

A.abc_123

B.圆周率PI

C.false

D._123abc

此题参考答案:

C

23、问:

阅读下面的Java代码,写出打印语句的输出结果(即类的初始化顺序)。

publicclassInitialOrderTest{

;

classSuperClass{

publicvoidfun()throwsIOException{

}

}

classSubClass1extendsSuperClass{

publicvoidfun()throwsException{

"SubClass:

:

fun()");

}

}

classSubClass2extendsSuperClass{

publicvoidfun()throwsFileNotFoundException,ArithmeticException{

"B6:

:

method()");

thrownewArithmeticException("被除数为0");

}

}

此题参考答案:

答:

错误的地方:

SubClass1中的fun()无法覆盖SuperClass中的fun();被覆盖的方式不抛出publicvoidfun()throwsException{

^

26、问:

下面的程序可否通过编译?

哪条语句会报错?

publicclassTestStaticMain{

publicstaticvoidmain(String[]args){

Personp=newPerson(10,"wangke");

();

}

classPerson{

privateintID;

privateStringname;

Person(intID,Stringname){

=ID;

=name;

}

publicvoidprint(){

"ID="+ID);

"name="+name);

}

}

}

此题参考答案:

答:

不能通过编译。

Personp=newPerson(10,"wangke");这一句会报错:

无法从静态上下文中引用非静态变量this。

27、问:

阅读下面的Java代码,写出打印语句

(1)、

(2)、(3)的输出结果,并说明缘故。

Stringstr1=newString("wangke");

Stringstr2=newString("wangke");

==str2);;

import.*;

importclassTest{

publicstaticvoidmain(String[]args){

newMyFrame().launchFrame();

}

}

classMyFrameextendsJFrame{

JButtonbtn=newJButton("测试");

Containerctp=getContentPane();

publicvoidlaunchFrame(){

setBounds(200,200,250,160);

setResizable(false);

setDefaultCloseOperation;

(newBorderLayout(10,10));

("North",btn);

(newMyActionListener());;

classIO{

publicstaticvoidmain(Stringargs[])throwsIOException{

"计算矩形面积");

"请输入长:

");

inta,b;

a="请输入宽:

");

b="计算矩形面积是:

"+a*b);

}

}

运行:

C:

\temp>javaIO

计算矩形面积

请输入长:

1

请输入宽:

计算矩形面积是:

637

此题参考答案:

答:

因为接收的是字节0-255。

当输入字符1以后,其实返回的是ASCII码,也确实是49。

然后你又按了个回车,回车的ASCII码是13。

因此,结果相当于

a=49

b=13

49*13=637

32、问:

下面的Java程序,打印结果是什么?

publicclassTest{

publicstaticvoidchangeStr(Stringstr){

str="welcome";

}

publicstaticvoidmain(String[]args){

Stringstr="1234";

changeStr(str);

}

}

此题参考答案:

答:

1234

33、问:

下面的Java程序,编译时会报什么错误?

classSuperClass{

publicvoidfun(){

}

}

classSubClassextendsSuperClass{

privatevoidfun(){

"SubClass:

:

fun()");

}

}

此题参考答案:

答:

错误的地方:

SubClass中的fun()无法覆盖SuperClass中的fun();正在尝试指定更低的访问权限;为public

privatevoidfun(){

^

34、问:

下面的代码是不是能输出wangke?

try{

(0);

}finally{

"wangke");

}

此题参考答案:

答:

可不能输出wangke。

在try-catch-finally结构中,

若是执行到try代码段或catch代码段中的return语句,那么先运行finally代码段,再运行return语句;

若是执行到try代码段或catch代码段中的(0)语句,那么直接退出程序,即这时finally代码段可不能被执行到。

35、问:

Strings=newString("xyz");创建了几个StringObject?

此题参考答案:

答:

两个对象。

一个是“xyx”,一个是指向“xyx”的引用对象s。

36、问:

下面的程序,有哪两处错误?

ClassTest{

voidf(){

publicinti;

}

}

此题参考答案:

答:

错误1:

Class应改成class

错误2:

publicinti;应改成inti;;

publicclassTest4{

publicstaticvoidmain(Stringargs[]){

try{

DataOutputStreamdout=newDataOutputStream(

newFileOutputStream(""));

for(inti=0;i<10;i++)

("0"+i);

();

DataInputStreamdin=newDataInputStream(

newFileInputStream(""));

for(inti=0;i<10;i++)

-"0"+",");

();

}catch(IOExceptione){

"发生异样:

"+e);

();

}

}

}

此题参考答案:

答:

问题

(1):

newFileOutputStream(“”)

(‘0’+i);

();

newFileInputStream(“”)

()

();

问题

(2):

常被用于读取与存储(读写或输入/输出)大体数据类型的数据。

问题(3):

文件的内容是:

0123456789

程序在操纵台窗口输出:

0,1,2,3,4,5,6,7,8,9,

41、JavaAWT程序设计:

在窗口中画出三个TextField(前两个用于接收用户输入的两个整数,第三个用于显示相加和),一个加号Label,一个等于号Button.当按下Button时,将相加上和放到第三个TextField中。

注意:

不许诺利用内部类。

此题参考答案:

import.*;

importclassTFMath{

publicstaticvoidmain(String[]args){

newTFFrame().launchFrame();

}

}

classTFFrameextendsFrame{

TextFieldnum1,num2,num3;

publicvoidlaunchFrame(){

num1=newTextField(10);

num2=newTextField(10);

num3=newTextField(15);

LabellblPlus=newLabel(\"+\");

ButtonbtnEqual=newButton(\"=\");

(newMyMonitor(this));

setLayout(newFlowLayout());

add(num1);

add(lblPlus);

add(num2);

add(btnEqual);

add(num3);

pack();

setVisible(true);

}

}

classMyMonitorimplementsActionListener{

TFFrametf=null;

publicMyMonitor(TFFrametf){

=tf;

}

publicvoidactionPerformed(ActionEvente){

intn1=intn2="\"+(n1+n2));

}

}

42、阅读下面的程序,写出输出结果。

publicclassMyException{

publicstaticvoidthrowException(){

"产生并抛出ArithmeticException类型的异样");

thrownewArithmeticException();

}

publicstaticvoidcatchArrayException(){

try{

throwException();

"在try语句块中的多余语句");

}catch(ArrayIndexOutOfBoundsExceptione){

"方式catchArrayException捕捉到异样");

}finally{

"方式catchArrayException的finally语句块");

}

"方式catchArrayException运行终止");

}

publicstaticvoidmain(String[]args){

try{

catchArrayException();

}catch(ArithmeticExceptione){

"方式main捕捉到异样");

}finally{

"方式main的finally语句块");

}

"异样处置终止");

}

}

此题参考答案:

答:

输出为

产生并抛出ArithmeticException类型的异样

方式catchArrayException的finally语句块

方式main捕捉到异样

方式main的finally语句块

异样处置终止

 

43、问:

下面语句中的错误都是在Java数据类型转换中的易错点。

分析语句的错误缘故并更正。

(1)floatf1=;

(2)longl1=,l2=88;

(3)byteb1=1,b2=2,b3=129;

(4)byteb=b1-b2;

(5)

inti=1;

i=i*;

;

import.*;

importclassMultiplyextendsJFrameimplementsActionListener{

oubleValue();

doubleoperand2=()).doubleValue();

(operand1*operand2));

}<\/P>

;

import.*;

importclassTest4extendsJAppletimplementsActionListener{

privateContainercp=getContentPane();;

privateJLabelprompt=newJLabel("请点击按钮");

privateJButtonstart=newJButton("开始");

privateJTextFieldoutput=newJTextField(20);

publicvoidinit(){

(newFlowLayout());

(start);

(prompt);

(output);

(false);

(this);

}

publicvoidactionPerformed(ActionEvente){

if((JButton)()==start)

("好勤学习,天天向上");

}

}

此题参考答案:

问题

(1):

Java程序分为Java应用程序(或Javaapplication)和Java小应用程序(或Javaapplet);这段程序是Java小应用程序。

问题

(2):

界面上包括一个标签(JLabel),一个按钮(JButton)和一个文本框(JTextField);点击按钮后,文本框内显示“好勤学习,天天向上”。

问题(3):

ActionListener是动作事件监听器接口;方式actionPerformed()是ActionListener中的方式;其功能是处置applet界面里发生的动作事件。

 

51、阅读下面程序,并回答下列问题。

(1)类Test3和类SuperTest之间是什么关系?

(2)关键字super和this别离是什么含义?

(3)这段程序的输出是什么?

classSuperTest{

publicintage;

publicSuperTest(Strings){

"Hi,Iam"+s);

age=35;

}

}

publicclassTest3extendsSuperTest{

publicintage;

publicTest3(Strings){

super(s);

"Nicetomeetyou!

");

age=7;

}

publicvoidprint(){

"Ageis"+age);

"Myageis"+;

"Myparent"sageis"+;

}

publicstaticvoidmain(Stringargs[]){

Test3test=newTest3("Olive");

();

}

}

此题参考答案:

问题

(1):

Test3是SuperTest的子类(或SuperTest是Test3的父类,或继承关系)。

问题

(2):

super指对象的父类(或超类);this指利用它的对象本身(或对对象自己的引用)。

问题(3):

程序的输出是:

<\p="">

Hi,IamOlive

Nicetomeetyou!

Ageis7

Myageis7

Myparent"sageis35<\p="">

52、程序设计:

在命令行中以树状结构展现给定的文件夹及其子文件(夹)中的文件。

测试文件夹为C:

Windows,层次用缩进4个空格表示。

此题参考答案:

答:

import.*;

publicclassFileList{

publicstaticvoidmain(String[]args){

Filef=newFile("C:

"++"Windows");

listFiles(f,0);

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 哲学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1