JAVA面向对象程序设计练习题参考答案_第1页
JAVA面向对象程序设计练习题参考答案_第2页
JAVA面向对象程序设计练习题参考答案_第3页
JAVA面向对象程序设计练习题参考答案_第4页
JAVA面向对象程序设计练习题参考答案_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、JAVA语言程序设计练习题1一、单选择题1、编译Java Application源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为(A. javaB. classC. htmlD. exe2、设X = 1 , y = 2 , z = 3p则表达式y+ = z /+ + x的值是(A. 3B. 3. 5C. 4D. 53、不允许作为类及类成员的访问控制符的是(A. publicB. privateC. staticD. protected4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A. static void

2、method()B. public void method()C. final void method()D. abstract void method()5、给定java代码如下,编译运行后,输出结果是()(选择一项)。public class test static int i;public int aMethodO i+;return i;public static void main (String argsE) Test test=new Test ();a) 0 b) 1 c) 2 d) 3二、填空题1、开发与运行Java程序需要经过的三个主要步骤为編辑源程序编译生成字节码和解释运

3、行字节码2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用 2字节内存空间,这样,无论是中文字符还是英文字符,都是占 用 2 字节内存空间。3.设X = 2 ,则表达武(X + + ) /3的值是4、若X = 5, y = lOr则X < y和x >= y的逻辑值分别为和 false抽象(abstract) 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该 方法必须在抽象类之中定义。锻终(final)方法是不能被当前类的子类重新定义的方法。6、创建一个名为MyPackage的包的语句是packageMyPackdg ;该语句应该放

4、在程序的位置为:应该在程序第一句7> 设有数组定义:int MyIntArray = 10 , 20 , 30 , 40 , 50 , 60 , 70; 则 执行以下儿个语句后的输出结果是 120for (int i = 0 ; i ; i + + )if ( i % 2 = = 1 )s += MylntArrayEi;8、在Java程序中,通过类的定义只能实现 单 重继承,但通过接口的定义可以实现 多重继承关系。三、写出下面程序的运行结果import *;public class abcpublic static void main(String args )AB s = new A

5、B(Hello!"/I love JAVA.");class ABStringsi;Strings2;publicAB (String strl, String str2)si = strl;s2 = str2;public String toStringC )return sl+s2;运行结果J Hello!I loveJAVA.2> import . * ;public classabcpublicstaticvoid main (String args)int i, sint a = 10 , 20 , 30 , 40 , 50 , 60 , 70 , 80 ,

6、 90 ;for ( i = 0 ; i < i + )if ( ai%3 = = 0 ) s += ai;运行结果J s = 1803、class Parent String one, two;public Parent(String a, String b)one = a;two = b;public class Child extends Parent public Child (String a, String b) super (a,b);public void print()public static void main(String args)Parent p = new

7、Parent("south", "north");Parent t = new Child("east", "west");0;0;运行结果J southeast to west(JAVA语言程序设计练习题2一、判断题bjava的源代码中定义儿个类,编译结果就生成儿个以.class为后缀的字节码文件。(J )2. Java程序里,创建新的类对象用关键字ne阳回收无用的类对象使用关键字free。(X )3,构造函数用于创建类的实例对象,构造函数名应与类名相同,返回类型为voido (X )4.在异常处理中,若try中

8、的代码可能产生多种异常则可以对应多个catch语句,若catch 中的参数类型有父类子类关系,此时应该将父类放在后面,子类放在前面。5.拥有abstract方法的类是抽象类,但抽象类中可以没有abstract方法。6.静态初始化器是在其所属的类加载内存时山系统自动调用执行。7.在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与<X )二、单项选择题1- Java application中的主类需包含main方法,以下哪项是main方法的正确形参(A、String args B、String argsEStringBuffer argsC、 Char arg D

9、2.以下关于继承的叙述正确的是(Ax在Java中类只允许单一继承B、在Java中一个类只能实现一个接口C、D、在Java中接口只允许单一继承在Java中一个类不能同时继承一个类和实现一个接口3. paint()方法使用哪种类型的参数(A、 GraphicsB、 Graphics2D C、 String D、 Color4. 以下哪个不是Java的原始数据类型(A、intBooleanC、 floatD、 char5. 若需要定义一个类域或类方法,应使用哪种修饰符(A、 staticB、 package C、 privateD、 public6. 在浏览器中执行applet程序,以下选项中的哪个

10、方法将被最先执行(A. init0B、start 0 C、destroy()D、stop 07. 有以下程序片段,下列哪个选项不能插入到行1。(2 . public class Interesting3.A、 import *;B、 package mypackage;Cs class OtherClass D> public class MyClass &设有下面两个赋值语句:b = ( *42" ). intValue0;下述说法正确的是(A、a是整数类型变量,b是整数类对象。B、a是整数类对象,b是整数类型变量。C、a和b都是整数类对象并且值相等。a和b都是整数类

11、型变量并且值相等。9- FilterOutputStream 是 BufferedOutputStream DataOutputStream 及 PrintStream 的父类,以下哪个类可能是FilterOutputStream构造函数的参数类型A> OutputStreamB、 FileC、 InputStreamD、 BufferedOutputStream10.在编写Java Applet程序时,需在程序的升头写上()语句。A、import * ;B、 importC、import * ;D、11.在使用interface声明一个接口时,只可以使用()修饰符修饰该接口。A、 pr

12、ivate B、 protected C、 private protectedD、 public三、程序阅读题k以下程序的输出结果为相等class StringTestlpublic static void main(String args)String sl="hello"String s2=new String ("hello");else2.以下程序段的输IB结果为5 6 7 8 9public class TestArraypublicstatic void main (String args ) intinta = 5,9,6, & 7

13、;fori = 0 : i < : i + ) intk = i;for(j = i ; j ; j+ )if ( aj<ak ) k = j:inttemp =ai;ai = ak ak = temp;for ( i =0 : i< i+ )3.写出以下程序的功能。import *;public class TestFilepublic static void main(String args) throws ExceptionBufferedReader br = new BufferedReader(new InputStreamReader);BufferedWrit

14、er bw = new BufferedWriter(new FileWriter( “");String s;while (true)s=();if 0 =0) break;(s);功能:从键盘逐一输入字符串,逐一输出至文件中,直至输入空行。4阅读以下程序,写出输出结果。class Animal Animal () nimal "public class Dog extends Animal DogO Dog ");public static void main(String args) Dog snoppy= new Dog();输出结果s Animal Do

15、gJAVA语言程序设计练习题31、如下哪个是Java中的标识符 )2、A、 publicB、 superC、 3numberDr width如下哪个是Java中的标识符()Ax fieldnameB、 super C、 SnumberD、 #number3、A、s += "books"B、s = s + 100;Cx int len =;D、 String已知如下定义:String s = "story"下面哪个语句不是合法的()如下哪个是Java中有效的关键字0A、nameB、 helloCx falseD、 good5、F面的代码段执行之后count

16、的值是什么(int count = 1for (inti = 1; i = 5; i+) countB、1C、15D、166、定义一个类,必须使用的关键字是()A、 publicBx classC、 interfaceD、 static7、定义一个接口必须使用的关键字是(A、 publicB、 classCx interfaceD、 static8、如果容器组件p的布局是BorderLayout,则在p的下边中添加一个按钮b,应该使用的语句是()A、(b):B、(b, "North");C. (b, "South");9、声明并创建一个按钮对象b,应该使

17、用的语句是(A. Button b=new Button();B、 button b=new button();C、Button b=new b();D、( “确定”):10、Frame对象默认的布局管理器是(A、 FlowLayoutB、 BorderLayoutC、 CardLayoutD、 null11、下列哪一个import命令可以使我们在程序中创建输入/输出流对象)A、 import *;B、 import *;D、import *;12、下面哪一个import命令可以为我们提供编写网络应用程序的类)A、 import *;B、 import *;C、 import *;Dx imp

18、ort *;13、如果需要从文件中读取数据,则可以在程序中创建哪一个类的对象)Ax FileinputstreamB、 Fi1eOutputStrearnC、 DataOutputStreamD、 F订eWriter填空题1、如果将类MyClass声明为public,它的文件名称必须是()才能正常编译。2、Java程序中的单行注释符是(;)o 8、当声明一个数组int arr = new int5:时,这代表这个数组所保存的变量类型是(int),数组名是(arr),数组的大小为(5),数组元素下标的使用范ffl是(0到4)。9、假设x=13, y=4,则表达式x%y != 0的值是(true)

19、,其数据类型是boolean)o 10、异常处理是山(try)、(catch)和finally三个关键块所组成的程序块。11、以下程序段的输出结果是(三角形)。int x = 5, y = 6, z = 4;if (X + y > Z && X + z > y&& z + y > x)"三角形);else12、下面程序段的执行结果是(6 5 4 3 2)。int a = 2, 3, 4, 5, 6 ;for (int i = - 1; i >= 0; i三、程序阅读题1以下程序的输出结果为_-Petr is 17 years o

20、ld!public class Person String name:int age;public Person(String name, int age) =name;=age;public static void main(String args) Person c = new Person("Peter", 17):+ " is " + + years old!");2、以下程序的输IB结果为课程号:101课程名:ASP学分:3 public class Course private String cNumber;private Stri

21、ng cName;private int cUnit:int unit) public Course(String number. String name.cXumber = number;cXame = name;cUnit = unit;public void printCourseInfo() "课程号:"+ cXumber + "课程名:"+ cXame + “ 学分:"+ cUnit):class CourseTest public static void main(String args) Course c;c = new Cour

22、se ("101", "ASP", 3):0;3、以下程序的输出结果为汤姆猫体重:斤 public class Tom private float weight:private static String name;public void setWeight(float weight) =weight;private void out() + "体重J " + weight + "斤");public static void main(String args) ="汤姆猫"Tom cat = n

23、ew TomO ;(20);0;4、以下程序的输出结果 public class Father String name, address, tel:int age;int age) public Father(String name.=name;=age;void out 0 "姓名:"+ name);”年龄r + age);void outOther0 "家庭住址:"+ address);“电话r + tel);class Son extends Father String school:public Son (String age)

24、 super(name, age);void out 0 0;0;"学校:"+ school);public static void main(String args) Son son = new Son("Tom", 15);="金水区"0;5、下列程序的运行结果是_12345 public class MyClass int a = 1, 2, 3, 4, 5 ;void out 0 for (int j = 0: j < : j+)public static void main(String args) MyClass m

25、y = new MyClass():0;1简述Java中异常处理的机制答:首先Java的异常是面向对象的。一个Java Exception是一个描述异常悄况的对象. 当出现异常悄况时,一个Exception对象就产生了,并放到异常的成员函数里。Java的异常处理是通过5个关键词来实现的:try, catch, throw, throws和finally。(1)异常处理S在Java语言的错误处理结构til tryr catch, finally三个块组成。 其中try块存放将可能发生异常的Java语言,并管理相关的异常指针;catch块紧跟在try 块后面,用来激发被捕获的异常;finally块

26、包含清除程序没有释放的资源,句柄等。不 管try块中的代码如何退出,都将执行finally块。(2)抛出异常:Java语言可以不在方法中直接捕获,而用throw语句将异常抛给上层的调用者。Throw语句就是来明确地抛出一个异常;首先你必需得到一个Throwable的 实例句柄,通过参数传到catch中,或者釆用new操作符来创建一个。2什么是继承答:通过必要的说明能够实现某个类无需重新定义就拥有另一个类的某些属性和方法,并 把这种关系称为继承,先定义的类称为父类,后定义的类称为子类,并且允许多层的继承 关系。3、请简述重载和重写的区别答:方法的重写Overriding和重载Overloadin

27、g是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中 多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写(Overriding) o子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽” 了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类 型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。五.程序设计题1按以下要求编写程序(1)创建一个Rectangle类,添加width和height

28、两个成员变量(2)在Rectangle中添加两种方法分别计算矩形的周长和面积(3)编程利用Rectangle输出一个矩形的周长和面积解答:public class Rectangle float width, height;public Rectangle(float width, float height) =width;=height;public float getLengthO return +* 2:public float getAreaO return * ;public static void main(String args) Rectangle rect = new Rec

29、tangle(10, 20):周长是:"+(); 面积是:"+();2、按以下要求编写程序编写Animal接口,接口中声明run()方法 定义Bird类和Fish类实现Animal接口 编写Bird类和Fish类的测试程序,并调用其中的runO方法解答:0;0;publicinterface Animal void run();class Bird implements Animal public void run() "鸟儿在飞class Fish implements Animal public void run() "鱼儿在游)public cla

30、ss TestAnimal public static void main(String args) Bird bird = new Bird();Fish fish = new Fish():3、编写一个Frame框架应用程序,要求如下:在窗口设置两个菜单“文件”、在“文件”菜单里添加三个菜单项“打开”、“保存”、在“编辑”菜单里添加两个菜单项“复制”、“粘贴”点击关闭菜单项时,使程序关闭。解答:importimportimportimportimportimportimportimportimport/*主窗体*/ public class MyFrame extends Frame pr

31、ivate static final long serial VersionUIDA)true falseB) false trueC) true true D)false falseprivate Frame frmMain;A) 2781235B) 12 35 8C) 35 12 872D) 8712352以便读取本机c盘my文件夹下的3、下面的程序段创建了 Buff er edReader类的对象im文件。File构造函数中正确的路径和文件名的表示是(File f = new F订e(填代码处); file =new FileReader(f): in=new BufferedReade

32、r(file);D) "c: niy"A) "/" B) "./iny/" C) "c:inyV 4应用程序的main方法中有以下语句,则输出的结果是( 几String sl=new String ("abc");Strings2=new String (abc);booleanbl=(s2);booleanb2=(sl=s2);5、应用程序的main方法中有以下语句,则输出的结果是( 几Hashtable hashtable=new Hashtable();C/12345); (V, "678

33、90");("a", "abcde"););A) a B) abcde C) 12345 D) 67890 6、下面语句的功能是()oRandomAccessFile raf2 = new RandomAccessFile("","r屛A)打开当前U录下的文件,既可以向文件写数据,也可以从文件读数据。B)打开当前U录下的文件,但只能向文件写入数据,不能从文件读取数据。C)打开当前U录下的文件,但不能向文件写入数据,只能从文件读取数据。D)以上说法都不对。7、应用程序的main方法中有以下语句,则输出的结果是( 几S

34、trings="12345#aaa#bbb#67890"intn=rr);intk=rr,n+i);intin=C#",k+l);Strings2=(in+l);D) bbbA) 123456 B) 67890 C) aaa 8、下面程序段执行后b的值是()oInteger integ =new Integer (9);boolean b = integ instanceof Object:A) 9 B) true C) 1 D) false 9应用程序的源程序如下,在命令行键入:java Test aaa bb c回车后输出的结果是()。public class

35、 Test public static void main(String args) intkl=:intk2=argsl. length ();A) 3 2B)1 20 1 3 D) 3 310、应用程序的main方法中有以下语句,则输出的结果是( 几int b = !, 2,2, 2,2,2;int suin=0;for(int i=0;i<i卄)for(int j=O;j<bi. length; j卄)suin*=bi j;A) 32 B)ll C) 2 D) 3 11应用程序的main方法中有以下语句,则执行后输出的结果是( 几int x=125, 21, 5, 16&am

36、p; 98;int max=x0;for(int i=l:i<i卄)max =xi;max);A) 125 B) 5 C) 98D) 16812、程序编译运行后输出的结果是()Opublic class Test String sl="java"public static void main(String args) int z=2;Test t=new Test ();A) java2 B)2 C)没有输出结果D)java13、应用程序的main方法中有以下语句,则输出的结果是()oStringdoublex=(sl)inty=(s2);x+y);A)B)C) 12

37、14、下面的程序创建了一个文件输出流对象,用来向文件中输出数据,假设程序当前U录 下不存在文件,编译下面的程序后,将该程序运行3次,则文件 的内容是()oimport *;public class Test public static void main(String argsE) try String s二"ABCDE"byte b = ();Fi 1 eOutput Str earn file=new FileOutputStreamC", true);(b):0:catch(lOException e) A) ABCABC B) ABCDE C) Test

38、D) ABCDE ABCDE ABCDE二、多选题K下面mainO方法的定义哪些是正确的()A) public static void main (String args) B) public static void main(String)C) public static void main (String args) D) public static void main (String X)2、线程对象的生命周期中,通常经历下面哪些状态(A)新建B)运行C)就绪D)死亡3、下面说法正确的是()oA)final可修饰类、属性(变量)、方法。B)abstract可修饰类、方法。C)抽象方法只有

39、方法头,没有方法体。D)关键字final和abstract不能同时使用。A)B)Reader Writer类用来读、写字符流。4、下面关于java中输入/输出流的说法正确的是()oFileinputstream - j FileOutputStream 类用读、写字节流。C)D)File类用来处理与文件相关的操作。5>下面说法正确的是()oRandomAccessFile既可以用来读文件,也可以用来写文件。A)如果某公共接口被声明在一个源文件中,则接口必须与源文件具有相同名字。B)如果源文件包含import语句,则该语句必须是除空行和注释行外的第一个语句行。C)如果某源文件包含package语句,则该

温馨提示

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

评论

0/150

提交评论