JAVA期末复习资料1.doc.pdf

上传人:tbuqq 文档编号:5616070 上传时间:2020-07-02 格式:PDF 页数:32 大小:241.63KB
返回 下载 相关 举报
JAVA期末复习资料1.doc.pdf_第1页
第1页 / 共32页
JAVA期末复习资料1.doc.pdf_第2页
第2页 / 共32页
JAVA期末复习资料1.doc.pdf_第3页
第3页 / 共32页
JAVA期末复习资料1.doc.pdf_第4页
第4页 / 共32页
JAVA期末复习资料1.doc.pdf_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《JAVA期末复习资料1.doc.pdf》由会员分享,可在线阅读,更多相关《JAVA期末复习资料1.doc.pdf(32页珍藏版)》请在三一文库上搜索。

1、Java期末复习题 一、判断题 1、 迕main方法中可以直接调用非静态的方法。(F ) 2、 方法重载就是一个类屮有多个同名但右不同形参和方法体的方法。(T ) 3、 一个Java源程序可有多个类,但只仅脊一个public类,而且源程序名与public类名相 同。(T ) 4、Java的源代码中定义几个类,编译结果就生成几个以.class 为/Pf缀的字节码文件。(T) 5、 方法屮的形参可以和方法所属类的属性同名。(T ) 6、Java类屮不能存在同名的两个成员函数。(F ) / 可以存在同名的方法,但是参数不能相同,这样的关系体现丫Java中的多态(重载) 7、 可以用 new来创建一个

2、类的实例,即“对象”。 (T ) 8、Java中类的构造函数只能有一个。(F ) / 错误,可以重载 . 如果没有,会默认生成xxx 0 9、 类的静态变M被该类的所有对象共享。(T ) 10、 不管定义与杏,任何类都冇一个不带参数的构造方法。(F ) 11、 一个类可以访问W个类的私有成员。(F ) 12、 构造方法没有返回值,因此在定义构造方法吋,其返回值类型必须声明为void。( F ) 13、对于类变 量,可以通过类名直接访问,也nf以通过该类的对象访问。(T ) 14、 构造方法的名字必须与类名相同。(T ) 15、 一个类的私侖变量可以在同一个包的不同类屮使川。(F ) 16、 实

3、例变量不能在类方法中直接引用,而类变量可以在实例方法中直接引用。(T ) 17、 抽象类可有构造方法,因此也能用new进行实例化。(F ) 18、 一个类可继承多个父类,实现多个接Ul。( F ) 19、 用final修饰的类不能被继承。(T ) 20、接1屮的 成员变量全部为常量,方法为抽象方法。(T ) 21、 接口无构造器,不能有实例,也不能定义常量。(F ) 22、java的类不允许嵌套定义。(E ) 23、 在接1_1屮所奋的方法都是抽象方法,所以必须在方法定义之前加上abstract关键字(F) 24、 抽象类中不能包含final修饰的方法。(T ) 25、 子类可以继承父类所冇的

4、成鉍变量及成员函数。(F) 26、 接口可以被扔一个接口继承。(T ) 27、 接口中只能定义符号常量和抽象方法。(T ) 28、final类不能派生子类,final方法不能被複盖。(T ) 29、 如果类A的一个方法m的访问权限是默认的,则m可以被同一个包屮的-K他类访问,也 可以被艽它包中A的子类访问。(F ) 30、 所有的类都可以被继承。(F ) 31、java中是单继承,侃一个类可以实现多个接口。( T ) 32、 如果一个类中包含抽象方法,则这个类也必须定义为抽象类。(T ) 33、 如果在了类屮改写从父类继承的方法,则了类屮定义的访问权限不能低于父类屮该方法 的访问权限。(T )

5、 34、 一个接口中的所有方法都是抽象的。(T) 35、 一个抽象的类不能直接用new命令创建对象。(T ) 36、一 个子类屮可以定义与父类屮名字相同,而参数不同的方法,此吋子类的方法会改写从 父类继承来的方法。(F ) / 重写的条件是了类定义的方法和父类的方法有相同的方法名,相同的参数列表,以及相同的 返回值,显然问题不符合以上条件,所以错误 37、JFrame, JPanel, JApplet和JButton四种组件都属于容器组件 38、BorderLayout是而板的缺贫布局管理器。 39、BorderLayout最多可以使川5个组件。 40、 一个面板(JPanel)不能被加入另一

6、个面板(JPanel)中。 41、 菜单需要一个JMenuBar对象,以使他们能被添加到JFrame。 42、 标签( 儿abel)可以在屏幕上显示一个字符或一幅图片。 43、BorderLayout 是界器javax. swing. JFrame 默认的布局管理器。 44、JTextArea可以用来接收多行文本的输入。 45、 在Java坐标系统中,X值从左向右增加。 (T ) 46、BorderLayout布扁管理器把组件排列在北、南、东、西和中间区域。(T ) 47、 边界布周管理器(BorderLayout)把矜器分成5个区域,毎个区域只能放一个纟II件。(T) 48、一个组件 可以注

7、册一个或多个事件监听器。(T ) 二、选择题 1、 以public 修饰的类如 :public class fish?则fish( A ) A)可被其它程序包中的类使用B)仅能被本程序乜中的类使用 C)不能被任意其它类使用D)不能被其它类继承 2、 下述哪个说法是不正确的?( A ) A)局部变景在使川之前无需初始化,因为有该变量类型的默认值 B)类成员变量由系统自动进行初始化,无需初始化 0参数的作用域就是所在的方法 D)for语句中定义的变量,当for语句执行完吋,该变量就消亡了 3、 使用如下哪个保留字可以使只科在定义该类的包屮的K他类才能访问该类? ( D ) A、abstract B

8、、private C、protected D、不使川保留字 4、Java源文件和编译后的文件扩展名分别为(B ) A) .class 和.java B) .java 和.class C).class 和.class D) .java 和.java 5、 下列说法巾,不正确的是(A ) A)一个java源程序编译通过后,得到的结果文件数也只冇一个。 B)一个java源程序经过编译后,得到的文件的扩展名一定是.class。 C)一个java源程序只能有一个public class类定义,且源文件的名字与public class 的类名相 M ,扩展名必须是.java。 D)个java源程序可以包含

9、多个类。 6、System, out. print ( “1” +2)打印到屏幕的结果是 (B ) A) 3 B) 12 C)l+2 D) 4 7、 假设int x=4 ,y=100, K列语句的循环体共执行儿次?( B ) while(y/x3) if(y%x3) x=x+l; (F (F (T ) (F else y=y/x ; A) 1次B) 2次C) 3次D) 4次 8、 下列说法中,不正确的是(D ) A、一个java源程序文件屮,只能有一个public类。 B、 一个java源程序文件中,以能脊一个package语句。 C、 一个java源程序文件中,nj以有多个import语句。

10、 D、 一个java源程序文件中,只能冇一个央中吋以冇main方法。 9、 阅读下列代码段, 选出该代码段的正确的文件名(D )。class A void method I() System, out. println(” methodl in class A” ) : public class B void method2 () System, out. print In ( method2 in class B”): public static void main(String args) System, out. print In ( main () in class B”): A、A

11、. java B、A. class C、B. class D、B. java 10、 编译K面源程序会得到哪些文件?( C ) class A1 class A2 Public class B Public static void main(String args ) A、只有B. class文件B、只有Al. Class和A2. class文件 C、有Al. class、A2. Class 和B. class 文件D、编泽不成功 11、 关于方法main ()的说法哪个正确? ( C) A.方法main ()只能放在公共类中 B.main()的头定义可以根据情况任意更改 C.一个类中可以没有

12、main ()方法 D.所有对象的创建都必须放在main ()方法中 12、 下列关于类、包和源文件的描述屮,不正确的一项是(D ) 。 A、一个包可以包含多个类B、一个源文件中,可能有一个公共类 c、属riuj个包的类在默认怙况下可以相互访问D、系统不会为源文件创建默认的包 13、下述哪一组 方法, 是一个类中方法重载的正确写法?( A 八、int addValue( int a, int b )return a+b; float addValue ( float a, float b) return a+b; B、int addValue (int a, int b )value=a+b;

13、 float addValue ( int a, int b) return (float)(a+b): C、int addValue( int a, int b )return a+1; int addValue ( int a, int b) return a+b; D、int addValue( int a, int b ) return a+b; int addValue ( int x, int y ) return x+y; 14、关于方法的重载,下列说 法哪一个是正确的?( A ) 八、方法的重载是指一个类中多个方法使川相同的名字,似参数不同。 B、 方法的重载是指一个类屮多个方

14、法使用相同的名字,且参数相同。 C、 方法的重载是指了类和父类中两个方法使用相同的名字,但参数不同。 D、 方法的重载是指子类和父类中两个方法使用相M的名字,且参数相同。 15、 下列关于类、乜和源文件的说法中,错误的一项是(D ) 。 八、一个文件可以属于一个包B、一个包可包含多个文件 C、一个类可以属于一个包D、一个包只能含有一个类 16、 下列关于作用域的说法中,正确的一个是(B)。 A、 不同方法屮声明的不同变景,可以互相访问 B、 在不14方法中可以声明相同数据类型的同名局部变量 C、 在|uj个类中可以声明相|uj数据类型的|uj名类变量 D、 在同一个程序块屮可以声明相同数裾类型

15、的同名变:ft 17、 下列描述中不正确的一项足(B ) 。 A、import语句告诉Java用户需嬰哪个也(package)中的类 B、 所有的类必须实例化,冰能调用它的数据成员和方法 C、package语句用于将源文件存入所指定的包屮 1)、System类不可能实例化,它的所有方法都是通过类变:ft来调用的 18、 为了区分重载多态中同名的不同方法,要求(A ) 。 A、形式参数个数或者类型不同B、返回值类型不M C、调用时用类名或对象名做前缀D、形式参数名称不同 19、K列说法中,正确的一个是(A ) 。 A、类成员变M在使用之徜可以不初始化C、参 数变 fi在使用之前必须初始化 20、

16、 下妞哪一项的方法调用能填入程序中的横线处?( C ) class Ex7 static void methodl() System, out. print In ( in Ex7) ; class Rx8 void method2() System, out. print In ( in Ex8“); B、局部变过在使用之前可以不初始化 D、所冇的变 fi在使用之前必须初始化 public class Ex9 public static void main(String args) Ex9 el = new Ex9(); el. method3(); public void method3(

17、) Ex7 e2 = new Ex7 (); Rx8 e3 = new Ex8 (); A、methodl(): B、Ex7. methodl( ): C、Ex7. methodl(): D e2. Methodl(): method2( ): Ex8.method2( ) ;e3.method2 ( ): Ex8.method2() ; 21、若编译和运行下列代码,出现的结果将是(C ) class MyClass int i = 0; public int myMethod(int x) return i+x; public static void main(String args) Sy

18、stem, out. println(myMethod(10): A、0 B、10 C、编译出错D、以上答案都不对 22、 为AB类的一个无形式参数无返M位的方法method书写方法头,使得用类名AB作为前 缀就 可以调用它,该方法头的形式为(A ) A) static void method( ) B) public void method() C) final void method( ) D) abstract void method() 23、 下而程序中类ClassDemo中定义了一个静态变量sum ,分析程序段的输fli结果。(C ) class ClassDemo public

19、static int sum=l; public ClassDemo() sum=sum K述哪些方法可以加入类Child ( D ) (A) int addValue( int a, int b ) / do something ? (B) public void addValue (int a, i nt b ) / do something. (C) public int addValue( int a ) / do something. (D) public int addValue( int a,int b )throws MyException /do something. 33、

20、对于下列代码: 1)class Person (B) line 5 (D) line 10 2)public void printValue(int i,int j) / 3)public void printValue(int i) /. 4) 5)public class Teacher extends Person 6)public void printValue() /. 7)public void printValue(int i) /. 8)public static void main(String args) 9)Person t = new Teacher 0; 10) t.

21、printValue(10); 11) 第10行语句将调川哪行语句? ( D ) (A) line 2 (B) line 3 (C) line 6 line 7 34、如果在一个类中定义了如卜*两个方法,则选项中正确的说法是( 八) void out () System, out. printlnO ; void out(int x) System, out. println(x) ; A、 这种定义是正确的,足方法的重载。 B、 这种定义是正确的,是方法的改写。 C、 此种定义是错误的,一个类中不能定义两个名字相同的方法。 D、 此种定义是错误的,第二个A法极该和第一个A法的参数相同。 35

22、、 下面哪一项是Java实现动态多态性的貝 ?体手段(B ) A)重载;B)蒗盖( 重写) C)接口D)抽象类 36、 下列说法哪个是正确的? A、 子类不能定义和父类同名同参数的方法 B、 子类只能继承父类的方法,而不能重载 C、 重载就是一个类中有多个同名仮有不同形参的方法 D、 子类只能蒗盖父类的方法,而不能重载 37、下列哪个类声明是正确的? A) abstract final class HI? C)protected private number; 38、 下面的足关于类及其修饰符的一些描述,不正确的是(C)。 A、abstract类只能用來派生子类,不能用来创建abstract类

23、的对象 B、abstract不能与final同时修饰个类 C、final类不但可以用来派生子类,也可以用来创建final类的对象 I)、abstract方法必须在abstract类中声明,促abstract类定义中可以没有abstract方 法 39、 下列输出的结果是 (A ) 。 class AA void Show() 參? 參 B)abstract private move() D)pub1ic abstract class Car System, out. print In ( “类AA ”); class BB extends li void Show() System, out.

24、 print!n( “类BB ”); public class ex7 public static void main(String args) AA a=new AA(); BB b=new BB(); a. Show () ; b. Show () ; 八、类AA B、类BB C、类BB 类BB 类AA 类BB 40、下列关于接口的说法不正确的是(C ) A、 接口所有的方法都是抽象的 B、 接口所有的方法 ?一定都是public属性的 C、 用于定义接口的关键字是implements I)、接U是JAVA屮的特殊类,包含静态变餅和抽象方法 41、下列说法中,哪一个足正确的?( C ) A

25、、 抽象类中定义的方法一定是抽象的。 B、 抽象类中一定存在抽象的方法。 C、 抽象类中可以没有抽象方法。 I)、抽象类的子类一定要实现抽象类屮的抽象方法。 42、假定有程序段:(D ) class SupperClass public int addValue( int a, int b) return a+b; class Subclass extends Superclass int value; / 此处插入代码 Y述哪个方法可以插入到类Subclass屮而不会出现编译错误? A、int addValue( int a, int b ) return a+b+1; B、public l

26、ong addValue (int a, int b ) value=a+b 十 1; D、类AA 类 AA C、protected int addValue(int a, int b ) return a+b+1; D、public int addValue( int a, int b ) return a+b+1; 43、若编译和运行下列代码,其结果将是(C ) class Circle double radius=l; public Circle(double r) radius = r; public double area() return 3.14*radius*radius: p

27、ublic class MyTcst public static void main(String args) Circle cl=new Circle(); System, out. println (cl. area(); A、3.14 B、0 C、编译出错D、以上答案都不对 44、下列说法中不正确的是(A ) A、 如果一个方法中定义的变量名与该方法所在类的成员变量同名,则在该方法中无法访问同 名的类成员变量。 B、 在java接UJ屮定义的方法一定是抽象方法。 C、java接U中不能定义变量。 D、java接口没有构造方法。 45、 有程序如下 class Superclass pri

28、vate int i=10; void print 1() System, out. println (i); class Subclass extends Superclass int i=20; public void printAO super, printl (); class Test public static void main (String args) SubClass clnew Subclass(); cl. printAO ; 编译并运行程序,其结果将是(A ) A、10 B、20 C、 编译 !II错 I )、0 46、用abstract定义的类(D ) A)可以被实

29、例化B)不能派生子类 C)不能被继承D )只能被继承 47、 如果任何中的子类都能访问父类中的成员,那么应使用哪个限定词(C ) (A)public (B) private (C)protected (D)default 48、下面的代码合法的足:(B ) A)public abstract method(); B)public abstract void method(); C)public abstract void method() ; D)public void method() implements abstract; 49、 以下是接U I的定义: interface 1 void

30、 setValue(int val); i nt getValue (); 以下哪个代码能通过编译?( c ) A)class A extends 1 int value; void setValue(int val)value=val; int getValue()return value; B)class B implements I int value; void setValue(int val)value二val; C)interface C extends I void increment(); D)interface D implements I void increment()

31、; 50、 下列关于接1和抽象类的说法不正确的是?( A ) A)接口也有构造方法 B)实现接U吋,耑对接U屮的所奋方法都要实现0 抽象类也有构造方法 D)抽象类可以派生出了类 51、 对于下列代码: public class SupperClass public int sum( int a, int b) return a+b; class Subclass extends SupperClass 卜*述哪个方法可以加入类Subclass? ( D ) A) int sum ( int a, int b ) return a+b; B) public void sum (int a, in

32、t b ) return ; C) public float sum ( int a, int b) return a+b; D)public int sum ( int a, int b ) return a+b; 52、对于下列代码: public class Parent public int addValue( int a, int b) int s; s = a+b; return s; class Child extends Parent 下述哪些方法町以加入类Child? ( D ) A) int addValue ( int a, int b ) / do something.

33、 B) public void addValue (int a, int b ) / do something . C) public int addValue( int a ) / dosomething. . . D) public int addValue( int a, int b ) /do something. ?. 53、 下列说法中,错误的一项是(C ) 。 A、 內部类是被定义于另一个类中的类 B、 使用闪部类实现监听器,在编程时比较容易实现 C、 内部类对象可以访M外部类的成员方法和变景,包括私有成员 D、 山于内部类定义于另一个类,因此不适用于AWT的事件处理机制 54、

34、 下列说法哪个是不正确的?( B ) A、 一个组件可以注册多个事件监听器 B、 一个监听器只能监听一个组件 C、 一个组件可以引发多种事件 D、 一个监听器可以监听处理多种事件 55、 下iflf说法错误的是 (D ) A)单击JCheckBox ( 复选框 ) 产生ItemEvent事件,并由ItemListener处理。 B)处理JButton 和JTextField 事件监听器接口都是ActionListener。0 一 个囬板(JParw)可以加入到另一个面板(JPanel)中。 D)在BorderLayout屮,添加到NORTH区的两个按钮将并排显示。 56、下列哪一个方法是自动调

35、整窗U的人小(C ) A、setSizeO B、setDefaultCloseO C、pack () D、setVisibleO 三、程序阅读题 1、阅读下面的程序: class test public static void main(String口args) int i = 1; int All = 0; for (;i run() ; public void m2 (Swimmer s) System, out. println(s. swimO) ; public void m3 (Animal a) System, out. println (a. eat () ; 11、 阅读下而

36、的程序:My Func abstract class Base abstract public void myfunc(); public void another() System, out. print In(“Another method“); public class Abs extends Base public static void main(String argv) Base b 二new Abs (); b. another (); public void myfunc() System, out. println(My Func); public void another(

37、) myfunc0; 12、阅读下面的程序代码,写出程序运行的打印结果。_ 15 11 10 class ParentClass int x二0; int sum(int a,int b, int c) return a+b+c; int sum(int a, int b) return a+b; class ChildClass extends ParentClass public ChildClass( ) x=10; int sum (int a, int b) return a+b+1; class Test public static void main(String args) P

38、arentClass pnew ChildClass(): System, out. print In (p. sum (5, 5,5); System, out. println(p. sum(5, 5); System, out. println (p. x); 四、程序填空题 1、制作一个GUI应用程序,布局方式采用默认布局,定义一个按钮“Press me”放到“North 区 域,并处理相应按钮事件。 import java. awt. import java. awt. event?氺; import javax. swing?氺; / 定义JButtontDemo 类,其父类为JF

39、rame,卯实现接I I ActionListener public class JButtonDemo extends JFrame impements ActionIJstener _ public JButtonDemo() JButton b; setTitle( Test Button Event! z,); b= new JButton () ; _ ;/ 创建按钮 _ b. addActionListener (this) ;/注册按钮的监听器 setSize(200, 100); / 将按钮放置于” North ”区域 setVisible(true); sotDefaultC

40、loscOperation(JErame. EXIT_0N_CL0SE); _ publlic void actionPerformed (ActionEvent e) / 实现ActionListener接口中的方法 System, out. println(Action occurred”); public static void main(String args ) new TestJButton(): 2、请将F面程序填写完整 public class Zuoyc2 private float r;/r 为圆的半径void setR (float zr) r=zr;/*补充代码段1 *

41、/ public float circle0 / 计算圆的面积 return 3.14f*r*r; class Test public static void main(Stringargs) Zuoye2 z=new Zuoye2 (); z. setR(10); System, out. printf ( “圆面积:” +z. circle();/*补充代码段2,计算输出半径为 10的圆的面积 */ 3、编写程序实现窗口,包含一个标签、一个文本桐和一个按钮,当用户单击按钮时,程序把文 本框中的lAj容提制到标签中。 / 引入相关包 import java, awt. *; _ public

42、 Myl ; rame public MyFrame() JErame fr 二new JFrameO ; / 设置窗体的布局为FlowLayout fr. setLayout(new FlowLayout (); 几abel lbl = new 几abel( “Init info” ) ; JTextField txt = new JTextField(30); JButton btn = new JButton( “Sure” ) ; fr. add(lbl); fr. add (txt); fr. add (btn); / 给按钮注册监听器 _ btn.addActionListener

43、(new Monitor(); / 使用窗体可见,并设置大小 fr. setSize(400, 400) ; fr. setVisible(true); / 定义内部类监听ActionEvent事件 class Monitor implements ActionListener public void actionPerformed(ActionEvent e) lbl. setTcxt (txt. getText (); public static void main(String args) new Myl ?rame (); 4、仔细阅读下ifU的程序代码,请将划线上?的语川补充完整。

44、abstract class Person private String name; public Person(String n) name = n; public _ abstract _ String getDescription(); public 一String get Name _ () return name; class Student extends Person private String major; public Student(String n, String m) super(n); major = m; public String _ getDescriptio

45、n() return 学生专业是 : + major; public class TestPerson public static void main( _ String args _ ) Person p = new Student ( 王甜甜, “计算机科学 “); System, out. print In (p. getNameO + “+ p. getDescriptionO); 5、阅读下面的程序代码,根据注释要求补充、完成代码( 划线是需要补充的地方 ) ,最后 简要说 明该程序的功能。 _ interface Area / 声明一个接口,接口名为Area publie doub

46、le CalsulateArea(); _ class MyCircle implements Area/定义圆类Mycircle 实现接口Area double r; publie MyCircle(double r) this. r=r; _ public double CalsulateArea() /实现接口中的方法 return Math. PI氺r氺r; class MyRectangle implements Area double width, height; public MyRectangle(double w, double h) widths; height=h; pu

47、blic double CalsulateAreaO return width氺height; class TestArea public static void main(String args) _ MyCircle c=ncw_MyCircle ;_ / 创 建MyCircle的对象,对象名为c,半径为5 System, out. println(The area of the Circle is +c. CalsulateArea(); 6、定义一个抽象类AbstractTest,其中有一个公共的抽象方法printMsgO。然后定义此抽象类的 一个子类DefmiltTest,包括的成员变量有姓名,学号,分数,且此类中乜括二个构造方法。 abstract class AbstractTest public abstract void printMsg(); _ class DefaultTest

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1