JAVA期末复习资料1
Java期末复习题
一、判断题
1、在main方法中可以直接调用非静态的方法。(F)2、方法重载就是一个类中有多个同名但有不同形参和方法体的方法。(T)3、一个Java源程序可有多个类,但只仅有一个public类,而且源程序名与public类名相同。(T)4、Java的源代码中定义几个类,编译结果就生成几个以.cla为后缀的字节码文件。(T)5、方法中的形参可以和方法所属类的属性同名。(T)6、Java类中不能存在同名的两个成员函数。(F)//可以存在同名的方法,但是参数不能相同,这样的关系体现了Java中的多态(重载)7、可以用new来创建一个类的实例,即“对象”。(T)8、Java中类的构造函数只能有一个。(F)//错误,可以重载.如果没有,会默认生成某某某()
9、类的静态变量被该类的所有对象共享。(T)10、不管定义与否,任何类都有一个不带参数的构造方法。(F)11、一个类可以访问另一个类的私有成员。(F)12、构造方法没有返回值,
因此在定义构造方法时,其返回值类型必须声明为void。(F)13、对于类变量,可以通过类名直接访问,也可以通过该类的对象访问。(T)14、构造方法的名字必须与类名相同。(T)15、一个类的私有变量可以在同一个包的不同类中使用。(F)16、实例变量不能在类方法中直接引用,而类变量可以在实例方法中直接引用。(T)17、抽象类可有构造方法,因此也能用new进行实例化。(F)18、一个类可继承多个父类,实现多个接口。(F)19、用final修饰的类不能被继承。(T)20、接口中的成员变量全部为常量,方法为抽象方法。(T)21、接口无构造器,不能有实例,也不能定义常量。(F)22、java的类不允许嵌套定义。(F)23、在接口中所有的方法都是抽象方法,所以必须在方法定义之前加上abtract关键字(F)24、抽象类中不能包含final修饰的方法。(T)25、子类可以继承父类所有的成员变量及成员函数。(F)26、接口可以被另一个接口继承。(T)27、接口中只能定义符号常量和抽象方法。(T)28、final类不能派生子类,final方法不能被覆盖。(T)29、如果类A的一个方法m的访问权限是默认的,则m可以被同一个包中的其他类访问,也可以被其它包中A的子类访问。(F)30、所有的类都可以被继承。(F)31、java中是单继承,但一个类可以实现多个接口。(T)32、如果一个类中包含抽象方法,则这个类也必须定义为抽象类。(T)33、如果在子类中改写从父类继承的方法,则子类中定义的访问权限不能低于父类中该方法的访问权限。(T)34
、一个接口中的所有方法都是抽象的。(T)35、一个抽象的类不能直接用new命令创建对象。(T)36、一个子类中可以定义与父类中名字相同,而参数不同的方法,此时子类的方法会改写从
父类继承来的方法。(F)
//重写的条件是子类定义的方法和父类的方法有相同的方法名,相同的参数列表,以及相同的返回值,显然问题不符合以上条件,所以错误
46、BorderLayout布局管理器把组件排列在北、南、东、西和中间区域。(T)47、边界布局管理器(BorderLayout)把容器分成5个区域,每个区域只能放一个组件。(T)48、一个组件可以注册一个或多个事件。(T)二、选择题
1、以public修饰的类如:publicclafih{}则fih(A)A)可被其它程序包中的类使用B)仅能被本程序包中的类使用C)不能被任意其它类使用D)不能被其它类继承2、下述哪个说法是不正确的?(A)
A)局部变量在使用之前无需初始化,因为有该变量类型的默认值B)类成员变量由系统自动进
行初始化,无需初始化C)参数的作用域就是所在的方法
D)for语句中定义的变量,当for语句执行完时,该变量就消亡了
3、使用如下哪个保留字可以使只有在定义该类的包中的其他类才能访问该类(D)A、abtractB、privateC、protectedD、不使用保留字4、Java源文件和编译后的文件扩展名分别为(B)A).cla和.javaB).java和.claC).cla和.claD).java和.java5、下列说法中,不正确的是(A)
A)一个java源程序编译通过后,得到的结果文件数也只有一个。B)一个java源程序经过编译后,得到的文件的扩展名一定是.cla。
C)一个java源程序只能有一个publiccla类定义,且源文件的名字与publiccla的类名相同,扩展名必须是.java。D)一个java源程序可以包含多个类。
6、Sytem.out.print(“1”+2)打印到屏幕的结果是(B)A)3B)12C)1+2D)4
7、假设int某=4,y=100,下列语句的循环体共执行几次?(B)while(y/某>3){if(y%某>3){某=某+1;}ele{
y=y/某;
}}
A)1次B)2次C)3次D)4次8、下列说法中,不正确的是(D)
A、一个java源程序文件中,只能有一个public类。B、一个java源程序文件中,只能有一个package语句。C、一个java源程序文件中,可以有多个import语句。
D、一个java源程序文件中,只能有一个类中可以有main方法。9、阅读下列代码段,选出该代码段的正确的文件名(D)。claA{
voidmethodl(){
Sytem.out.println(”methodlinclaA”):}}
publicclaBvoidmethod2(){
Sytem.out.println(”method2inclaB”):}
publictaticvoidmain(Stringarg[]){
Sytem.out.println(”main()inclaB”):}}
while语句都可以用for改写A、A.javaB、A.claC、B.claD、B.java10、编译下面源程序会得到哪些文件(C)claA1{}
claA2{}
PublicclaB{
Publictaticvoidmain(Stringarg[]){}}
A、只有B.cla文件B、只有A1.Cla和A2.cla文件C、有A1.cla、A2.Cla和B.cla文件D、编泽不成功11、关于方法main()的说法哪个正确?(C)A.方法main()只能放在公共类中
B.main()的头定义可以根据情况任意更改C.一个类中可以没有main()方法
D.所有对象的创建都必须放在main()方法中
12、下列关于类、包和源文件的描述中,不正确的一项是(D)。
A、一个包可以包含多个类B、一个源文件中,可能有一个公共类C、属于同一个包的类在默认情况下可以相互访问D、系统不会为源文件创建默认的包13、下述哪一组方法,是一个类中方法重载的正确写法?(A)A、intaddValue(inta,intb){returna+b;}
floataddValue(floata,floatb){returna+b;}B、intaddValue(inta,intb){value=a+b;}
floataddValue(inta,intb){return(float)(a+b);}C、intaddValue(inta,intb){returna+1;}intaddValue(inta,intb){returna+b;}D、intaddValue(inta,intb){returna+b;}intaddValue(int某,inty){return某+y;}
14、关于方法的重载,下列说法哪一个是正确的?(A)A、方法的重载是指一个类中多个方法使用相同的名字,但参数不同。B、方法的重载是指一个类中多个方法使用相同的名字,且参数相同。C、方法的重载是指子类和父类中两个方法使用相同的名字,但参数不同。D、方法的重载是指子类和父类中两个方法使用相同的名字,且参数相同。15、下列关于类、包和源文件的说法中,错误的一项是(D)。A、一个文件可以属于一个包B、一个包可包含多个文件C、一个类可以属于一个包D、一个包只能含有一个类16、下列关于作用域的说法中,正确的一个是(B)。A、不同方法中声明的不同变量,可以互相访问
B、在不同方法中可以声明相同数据类型的同名局部变量C、在同一个类中可以声明相同数据类型的同名类变量D、在同一个程序块中可以声明相同数据类型的同名变量17、下列描述中不正确的一项是(B)。
A、import语句告诉Java用户需要哪个包(package)中的类B、所有的类必须实例化,才能调用它的数据成员和方法C、package语句用于将源文件存入所指定的包中
D、Sytem类不可能实例化,它的所有方法都是通过类变量来调用的18、为了区分重载多态中同名的不同方法,要求(A)。
A、形式参数个数或者类型不同B、返回值类型不同C、调用时用类名或对象名做前缀D、形式参数名称不同19、下列说法中,正确的一个是(A)。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论