Java面向对象程序设计试卷(含答案)

上传人:daj****de2 文档编号:183722487 上传时间:2023-01-31 格式:DOCX 页数:27 大小:43.40KB
收藏 版权申诉 举报 下载
Java面向对象程序设计试卷(含答案)_第1页
第1页 / 共27页
Java面向对象程序设计试卷(含答案)_第2页
第2页 / 共27页
Java面向对象程序设计试卷(含答案)_第3页
第3页 / 共27页
资源描述:

《Java面向对象程序设计试卷(含答案)》由会员分享,可在线阅读,更多相关《Java面向对象程序设计试卷(含答案)(27页珍藏版)》请在装配图网上搜索。

1、Java面向对象程序设计试卷(七)、选择题1、根据java标识符命名规则和风格约定,下面哪一个标识符是类 名?A、XxxYyyB、xxxYyyC、XXXYYYD、xxxyyy2、下列变量定义语句中不正确的是:A、byte d = 312 。B、short d = 312 oC、int d = 1+ C oD、long d = 312 。3、下列数组的定义语句中不正确的是:A、intgrade =newint 1010oB、intgrade =newint 10 oC、int grade=newint1010oD、intgrade=newint1010o4、下列说法中,哪一个是正确的?A、抽象类

2、中定义的方法一定是抽象的。B、抽象类中一定存在抽象的方法。C、抽象类中可以没有抽象方法。D、抽象类的子类一定要实现抽象类中的抽象方法。5、关于方法的重载,下列说法哪一个是正确的?A、方法的重载是指一个类中多个方法使用相同的名字,但参数不 同。B、方法的重载是指一个类中多个方法使用相同的名字,且参数相 同。C、方法的重载是指子类和父类中两个方法使用相同的名字,但参数 不同D、方法的重载是指子类和父类中两个方法使用相同的名字,且参数 相同6、假定有程序段:class SupperClasspublic int addValue( int a, int b) ( return a+b 。)class

3、 SubClass extends SuperClassint value o/此处插入代码下述哪个方法可以插入到类SubClass中而不会出现编译错误?A、int addValue ( int a, int b ) (return a+b+1 。 B、public long addValue (int a, int b ) (value=a+b+l 。C、protected int addValue (int a, int b )(return a+b+1 。D、public int addValue( int a, int b ) (return a+b+1 o 7、若编译和运行下列代码,

4、其结果将是class Circledoubleradius=l 。publicCircle(double r)radius = r o public double area()return 3.14*radius*radiuspublic class MyTest(public static void main(String args) (Circle cl=new Circle ()。System, out. printin (cl. area()A、3.14 B、0 C、编译出错D、以上答案都不对8、下列说法中,不正确的是A、一个java源程序文件中,只能有一个public类。B、一个ja

5、va源程序文件中,只能有一个package语句。C、一个java源程序文件中,可以有多个import语句。D、一个 java 源程序文件中,只能有一个类中可以有 main 方法。9、下列说法中不正确的是A、如果一个方法中定义的变量名与该方法所在类的成员变量同名, 则在该方法中无法访问同名的类成员变量。B、在java接口中定义的方法一定是抽象方法。C、java接口中不能定义变量。D、java 接口没有构造方法。10、下列说法中正确的是()A JFrame对象能够被加入到另一个JFrame对象中。B、JFrame对象能够被加入到JPanel对象中。C、JPanel对象能够被加入到另一个JPanel

6、对象中。D、JFrame对象能够被加入到JApplet对象中。11、有下列程序public class MyTestpublic static void main(String args)tryint al=Integer.parselnt(args0)int a2=Integer. parselnt(args1)int result=al/a2 o+ result) oreturn oSystem, out. println(z/ 运算结果: catch(ArrayIndexOutOfBoundsExceptione)System, out. println(,z 下标越界)。catch(A

7、rithmeticException e)System, out. printin (除数为零)ocatch (Exception e)System, out. printin ( 捕获了异常)。finallySystem, out. printin ( 进入 Finally 语句块)。J该程序编译后,执行java MyTest 10 10,则运行的结果为A、运所结果:1进入Finally语句块B、下标越界C、除数为零D、捕获了异常注:(对try catch语句,即使前面符合条件的catch中 语句,也会进 有return入finally ,之后再执行return)12、关于异常,以下说法正确

8、的是A、所有异常类都是Throwable类的子类。B、Error 类是 Exception 的子类。C、在catch语句中,异常类的排列次序无关紧要。D、运行时异常无法捕获。13、有下列程序class TestExceptionclass MyException extends Exception )public void testMethodO throws MyException )public void test ()testMethodO o J在public void test ()后加上哪一句可以使编译不出错A、throw MyExceptionB、throws MyExcepti

9、onC、throw new MyException()D、throws new MyException()14、下列哪一段代码能够删除文件file.txtA、File f二new File( file.txt ) f. delete () oB、RandomAccessFile f= new RandomAccessFile( file.txt , rw ) of. delete () oC、Fi1eOutputStrearn f=new FileOutputStream( file.txt )。f. remove () oD、File f二new File( file.txt ) File,

10、 delete(f) o15、下面哪一个流属于过滤流A、InputStreamB、FilelnputStreamC、DatalnputStreamD、FileReader16、下列说法错误的是:A、TCP是面向连接的协议,而UDP是无连接的协议。B、数据报传输是可靠的,可以保证包按顺序到达。C、URL代表的统一资源定位符一共包括五个部分D、Socket和ServerSocket分别表示连接的Client端和Server端17、设有以下程序段class TestExceptionpublic static void main(String args)try(return 。finallySyst

11、em, out. printin(finally) 。J JJ程序编译并执行,其结果将是A、程序执行,但没有任何输出B、程序输出finallyC、程序编译时出错,提示缺少catchD、程序编译时出错,提示finally语句无法访问到。18、FlowLayout布局管理器按照组件加入容器的次序从()到()排列 组件。A、上、下B、右、左C、左、右D、前、后19、有程序如下class SuperClass cprivate int i=10 ovoid printl () cSystem, out. printin (i)class SubClass extends SuperClass cint

12、 i=20 opublic void printAO csuper, printl () oclass Test cpublic static void main(String args)SubClass cl=new SubClass () o,o cl. printAO 。j编译并运行程序,其结果将是A、10B、20C、编译出错D、020、下面哪一种流可以用来输入字符A、InputStreamB、OutputStreamC、InputStreamReaderD、BufferedlnputStream、判断题(阅读每一句陈述,判断其正误。在题后的括号中作相应 的记号,正确的填入T,错误的填入

13、Fo )1、接口可以被另一个接口继承。(T) 2、接口中只能定义符号常量和 抽象方法。(T)3、private方法不能被继承,但可以被覆盖。(F)4、如果类A的一个方法m的访问权限是默认的,则m可以被同一个 包中的其他 类访问,也可以被其它包中A的子类访问。(F)5、类的静态变量被该类的所有对象共享。(T)6、所有的类都可以被继承。(F)7、java中是单继承,但一个类可以实现多个接口。 (T)8、不管定义与否,任何类都有一个不带参数的构造方法。(F)9、语句” double i=20. Of。”在编译时不会引起错误。(T)10、线程的sleep()方法是一个静态方法。(T)三、程序阅读题。1

14、、仔细阅读下面的程序代码,编译和运行后,请写出该程序的输出 结果。class TestExceptionpublic static String toSeparateNumber(String number)String f or ma t e dNumb er=/ otrydouble n=Double. parseDouble(number) onumber二Double. toString(n) 。int i=number. indexOf ()。if (i=0)formatedNumber=number. substring(i, number, length() oi=i-l oel

15、se i=number. length()-1 oint k=0 ofor (int j = i o j=0 o j一)formatedNumber=number. charAt(j)+formatedNumber ok=(k+l)%3o if (k=0 & j!=0)formatedNumber=,z, +formatedNumber 。catch(NumberFormatException e)System, out. printin (参数错误!要求是数字格 式! )return formatedNumberpublic static void main(String args)Syst

16、em, out. printin (TestException. toSeparateNumber(001200 45) oSystem, out. printin (TestException. toSeparateNumber (Z,235A6. 54) o答案:1, 200. 45参数错误!要求是数字格式!2、仔细阅读下面的程序代码,编译和运行后,请写出该程序的输出 结果class FatherString name=/zFather,z oint age=45 oint getAge () return age oString getName()return namevoid setA

17、ge(int a)(age = a o、class Child extends Father(String name=Child oint age=18 oint getAge () return age+1 o、class Test2(public static void main(String args)Father p=new ChildO oSystem, out. printin (p. getAge ()p. setAge (30) oSystem, out. printin (p. getAge ()System, out. printin (p. getName ()答案:19

18、Father3、阅读下面程序代码,写出程序运行的输出结果 class Test3public static void main(String args)(trycallMethodO ocatch(Exception e) System, out. print(will )System, out. printin (z,win ) ostatic void createException()throw new ArithmeticException() 。static void callMethodOtrycreateException()。System, out. print (/znot

19、) ocatch(ArraylndexOutOfBoundsException e)System, out. print (/zyou ) o finallySystem, out. print(I ) oSystem, out. print (/znever ) 。答案:I will win4、下面的程序利用线程输出从a到z的26个字母,每隔一秒钟输出一个字母,程序不完整,请阅读程序代码,根据注释要求在划线 处补充完成代码。public class Test4 implements Runnablechar charArray=new char26 。public Test4()for (i

20、nt i = 0 。 icharArray. length。i+)charArrayi = (char)(i+ a ) opublic void run()tryfor (int i = 0 o i char Array, length 。i+)/休眠一秒钟System, out. print(charArrayi)Jcatch (InterruptedException e)e. printStackTrace () opublic static void main(String args)Thread t = / 实例化线程对象/启动线程答案:Thread, sleep(1000) one

21、w Thread (new Test4 () ot. start () o5、下面的程序是一个基于AWT的简单图形用户界面程序。程序运行 时将显示 个窗口 (如下图),窗口上有一个“退出”按钮,单击 退出按钮程序将结束运行。阅读程序代码,根据注释要求补充完成 代码(划线是需要补充的地方)。import java. awt. * 。import java. awt. event. * 。import javax. swing. * opublic class Test5 extends JFrameprivate JButton exit 。private JLabel label 。publi

22、c Test5 ()super ( 图形用户界面)。label = new JLabel (单击退出按钮关闭本窗口。)/将标签放置在窗口的北面exit = new JButton (退出)。exit. addActionListener (/*注册一个内部类形式的事件监听器,该监听器关闭程序*/ ) Oadd(exit, BorderLayout. CENTER )。setSize (300, 100)。setVisible(true) 。public static void main ( String args )(Test5 app = new Testo()。答案:add( label,

23、 BorderLayout. NORTH ) onew ActionListener()public void actionPerformed(ActionEvent e)System, exit(0) 。 四、编程题(共2小题,每小题20分,共40分)。1、根据以下说明,编写一个银行账户类Account,并编写一个main 方法,对Account类进行测试,在main方法中要调用Account的所 有方法,发生异常时,要打印异常信息。该类的成员变量如下(访问权限均为private ):变量名含义数据类型Id帐号StringOwner账户持有人姓名StringBalance余额double该类

24、的成员方法如下(访问权限均为public ):方法名参数说明构造方法无构造一个账户实例, 将id , owner设为 null , balance 设为0. 00构造方法String id, String owner, double amount构造一个账户实例, 用参数设置成员变量 id , owner1 ,balance 的值setIDString id用参数设置成员变量 id的值。返回类型 void osetChmerString owner用参数设置成员变量 owner的值。返回类 型 void oDepositdouble amount将金额amount存入 帐户,如果帐号为 nul

25、l ,则抛出异常, 异常信息为“帐号未 知!” o返回类型 double ,返回值为 amount。Withdrawdouble amount从帐户支取金额 amount,如果帐号为 null ,或者余额小于 amount,则抛出异 常,异常信息分别为 “帐号未知! ”和 “余额不足!”。返 回类型double ,返 回值为amount oQuery无打印 id , ownery balance。返回类型 void o参考答案:class Accountprivate String id 。private String owner oprivate double balance opublic

26、 Account()id=null oowner=null obalance=0.00 opublic Account(String id,String owner, double balance)-this. id=id othis. owner=owner othis. balance=balance opublic void setID(String id)this. id=id opublic void setowner(String owner)this. owner=owner。public double deposit(double amount) throws Exceptio

27、nif (id=null)throw new Exception(?,帐号未知! )。elsebalance+=amount o return amount 。public double withdraw(doub1e amount) throws Exceptionif (id=null)throw new Exception(,?帐号未知! )oelse if (balanceamount)throw new Exception(/z 余额不足!)。elsebalance-=amount o return amount 。public void query()System, out. pr

28、intin ( 帐号:+id+ 户名:+owner+ 余 额:+balance) opublic static void main(String args)try(Account acl=new Account (1020011232, 张二 10000) oacl. query () oacl. deposit(2000) oacl. query () oacl. withdraw(5000)。acl. query () oAccount ac2=new Account() oac2. query () ac2. set ID (2018343433”) ac2. setOwner (,z

29、李四 )o ac2. deposit (2000)。 ac2. query ()。ac2. withdraw(5000)。ac2. query () o? catch(Exception e)System, out. printin (e. getMessage ()2、编写类Hand Input, java,该类接受用户的键盘输入,存入指定 的文件。用户的输入以行为单位,当用户输入end时,程序结 束。如果指定的文件己经存在,程序提示用户,并结束程序。参考答案import java. io. * 。class Handinputpublic static void main(String a

30、rgs)String inlineBufferedReader handin=nullPrintWriter fostream=null tryFile f=new File(args0) oif (f. exists ()System, out. printin (目标文件己经存在。请换个文件名! )oreturn 。handin = new BufferedReader(new InputStreamReader(System, in) o fostream = new PrintWriter(new FileWriter(f) o while (true)iniine=handin. readLine() 。if (!inline, equals(end)fostream. printin (inline) 。elsebreak 。)catch(lOException e)System, out. printin (操作失败! )ofinallytryif (handin!=null) handin. close()if (fostream!=nul1) fostream. close()catch(Exception el) (

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!