第四章 类复习练习.doc
5页第四章 Java类1、以下叙述不正确的是 ( )A、构造方法名与类名相同 B、一个类不允许有多个构造方法C、构造函数只能由new操作调用,而不能被用户直接调用 D、构造函数没有返回类型2、关于构造方法,下列说法错误的是A、构造方法不可以进行方法重写 B、构造方法用来初始化该类的一个新的对象C、构造方法具有和类名相同的名称 D、构造方法不返回任何数据类型3、下列哪种成员修饰符修饰的变量只能在本类中被访问?A、protected B、publicC、default D、private4、设A为已定义的类名,则下列声明A类的对象a的语句正确的是()A、A a = new A(); B、a = A();C、A a = new class(); D、a A;5、下面哪个关键字可以定义常量,说明这个变量赋值后永不改变?A、protected B、staticC、final D、super6、下面关于类说法不正确的是()A、类是同种对象的集合和抽象 B、类属于Java语言中的复合数据类型C、对象是类的实例 D、类就是对象7、下列可以用于定义类成员的访问控制权限的关键字是()。
A、extends B、privateC、class D、double8、对于构造方法,下列叙述中不正确的是()A、构造方法是类的一种特殊方法,它的方法名必须与类名相同 B、构造方法的返回类型只能是void型C、构造方法的主要作用是完成对类的对象的初始化工作 D、一般在创建新对象时,系统会自动调用构造方法9、若需要定义一个静态成员变量,应使用哪一个修饰符?A、static B、publicC、private D、protected10、main()方法的返回值类型是()A、int B、voidC、boolean D、static11、关于protected修饰的成员变量,下面说法正确的是()A、可以被类自身、与它在同一包中的其他类和该类的子类所访问 B、允许任何包中的任何类访问C、只能被该类自身所访问 D、只能被同一包中的类访问12、给出下面的程序代码: class Test{ private float a; public static void m(){ // } } 如何使成员变量a被方法m()直接访问?A、将private float a 改为 protected float aB、将private float a 改为 public float aC、将private float a 改为 static float a D、将private float a 改为float a13、下面关于接口的说法中不正确的是?A、接口所有的方法都是抽象的。
B、接口所有的方法一定都是public属性的C、用于定义接口的关键字是implements D、接口是Java中的特殊类,包含常量和抽象方法14、为了区分类中重载的同名的不同方法,要求()A、采用不同形式的参数列表 B、使用不同的参数名C、修改访问权限 D、返回值的数据类型不同15、Java语言的类间的继承关系是()A、单继承的 B、多继承的C、与C++语言完全相同 D、不允许继承16、设有下面两个类的定义: class A{ int phone; String name; } class B extends A{ int level; int getLevel(){ return level; } } 则类A和类B的关系是()A、包含关系 B、继承关系C、关联关系 D、没有任何关系17、在Java语言中的哪一个包是编译器自动导入的?A、java.lang B、java.awtC、java.io D、java.applet18、为导入包ch4,可以使用的语句是()A、import ch4.*; B、package ch4.*;C、ch4 import; D、ch4 package;19、下列哪个类声明是正确的( )A、abstract final class HI{//……} B、abstract private move(){//……}C、protected private number;D、public abstract class Car{//……}20、下列说法错误的是A、JAVA是面向对象的语言 B、JAVA以类为程序的基本单位C、JAVA语言中,对象和实体不是一一对应的关系 D、在JAVA语言中,类是具有某种功能的基本模块的描述21、main方法的修饰符类型是( )。
A、final B、publicC、private D、package22、定义一个含有5个元素的数组,下列语句正确的是( )A、int [] a={22,23,24,25,12}; B、int a []=new int(5);C、int [5] array; D、int [] arr;23、以下代码中,this是指( )class bird{int x,y;void fly(int x,int y){this.x=x;this.y=y;}}A、bird B、flyC、bird或fly D、不一定24、给出下面代码段 1) public class Test { 2) int m, n; 3) public Test() {} 4) public Test(int a) { m=a; } 5) public static void main(String arg[]) { 6) Test t1,t2; 7) int j,k; 8) j=0; k=0; 9) t1=new Test(); 10) t2=new Test(j,k); 11) } 12) } 哪行将引起一个编译时错误( )A、line 3 B、line 5C、line 6 D、line 1025、对于下列代码: 1) class Person { 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(); 10) t.printValue(10); 11) } 第10行语句将调用哪行语句( )A、line 7 B、line 2C、line 3 D、line 626、下面关于接口的说法中不正确的是。
A、接口所有的方法都是抽象的B、接口所有的方法一定都是public属性的C、用于定义接口的关键字是implmentsD、接口是Java中的特殊类,包含常量和抽象方法27、下面关于类说法不正确的是A、类是同种对象的集合和抽象B、类属于Java语言中复合数据类型C、对象是Java语言中的基本结构单位D、类就是对象29、设有整型数组的定义:int a[]=new int[8];;则a.length的值是A、8 B、9 C、7 D、630、下面关于Java的说法正确的是A、Java中的类可以有多个直接父类B、抽象类可以实例化C、最终类可以作为其他类的父类D、Java中接口支持多继承31、如果局部变量与实例变量同名,那么如何在局部变量的作用域内引用实例变量A、无法引用,必须更名使两者名字不同B、在实例变量前加关键字this使用this访问该实例变量C、在实例变量前加关键字superD、不影响,系统可以自己区分32、在Java中,一个类可同时定义许多同名方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同,这种面向对象程序特性称为A、隐藏 B、重写 C、重载 D、Java不支持此特性33、下面关于继承的叙述正确的是。
A、在Java中类间只允许单一继承B、在Java中一个类只能实现一个接口C、在Java中一个类不能同时继承一个类和实现一个接口D、在Java中一个类可以同时继承多个类34、下列哪个不是面向对象程序设计的特点A、抽象 B、继承 C、多态 D、结构化35、为了区分重载多态中同名的不同方法,要求A、形式参数的个数或者类型不同B、返回值类型不同C、调用时类名或对象名做前缀D、形式参数名称不同36、下列说法正确的一项是A、java.lang.Integer是接口B、java.lang.Runnable是类C、Double对象在java.lang包中D、Double对象在java.util包中37、下列关于类、包和源文件的描述中,不正确的一项是A、一个包可以包含多个类B、一个源文件,只能有一个公共类C、属于同一个包的类在默认情况下可以相互访问D、系统不会为源文件创建默认的包判断题:1、Java Applet程序必需有一个主方法名叫main() 2、Java是完全面向对象的编程语言 3、Java不支持多继承,子类只能有一个父类 4、类是对象的抽象,对象是类的实例 5、继承使父类的代码得到重用,在继承父类提供的共同特性基础上添加新的代码,使编程不必一切从头开始,提高了编程效率。
6、接口非常类似于协议,是一个包含方法定义、方法实现和常量值的集合 7、abstract说明的类称为抽象类,不能用它实例化一个对象,它只能被继承 8、实例化由new操作符实现,实例化就是为对象分配内存 9、一个类只能有一个构造方法 10、Java的垃圾收集机制大大减轻了程序员的负担,不用再编写专门的内存回收程序解决内存分配问题不仅提高了编程效率,而且进一步增强了Java程序的稳固性 11、由private修饰的成员变量称为私有变量,可以被声明它的类和其派生的子类访问 12、静态方法只能使用静态变量,不能使用实例变量(非静态变量称为实例变量)对13、父类的方法被声明为最终(fin。





