传智播客java考试习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第三次作业
•1、
jar命令的()参数可以创建归档文件
(1分)
o A、c
o B、v
o C、f
o D、x
参考答案:A
答案说明:c参数,创建归档文件
•2、
下列选项中,用于在定义子类时声明父类名的关键字是( )。

(1分)
o A、interface
o B、package
o C、extends
o D、class
参考答案:C
答案说明:
•3、
用于定义类成员的访问控制权的一组关键字是( )。

(1分)
o A、class, float, double, public
o B、float, boolean, int, long
o C、char, extends, float, double
o D、public, private, protected
参考答案:D
答案说明:
•4、
下面关于throws作用的描述中,正确的是()
(1分)
o A、一个方法只能抛出一个异常信息
o B、一个方法上使用throws声明一个异常说明这个方法运行时一定会抛出这个异常
o C、throws可以声明在方法体中用来指定抛出的具体异常
o D、throws出现在方法函数头
参考答案:D
答案说明:throws关键字需要写在方法声明的后面,throws后面需要声明方法中发生异常的类型,通常将这种做法称为方法声明抛出一个异常
•5、
下列关于匿名内部类的描述,错误的是()
(1分)
o A、匿名内部类是内部类的简化形式
o B、匿名内部类的前提是必须要继承父类或实现接口
o C、匿名内部类的格式是"new 父类(参数列表) 或父接口(){}"
o D、匿名内部类可以有构造方法
参考答案:D
答案说明:匿名内部类不能有构造方法,它连类名都没有
•6、
以下关于编译异常说法正确的是()
(1分)
o A、编译异常就是指Exception以及其子类
o B、编译异常如果产生,可以不用处理
o C、编译异常如果产生,必须处理,要么捕获,要么抛出
o D、编译异常指的就是Error
参考答案:C
答案说明:编译异常如果产生,必须处理,要么捕获,要么抛出
•7、
父类中的方法被以下哪个关键字修饰后不能被重写?()
(1分)
o A、public
o B、satic
o C、final
o D、void
参考答案:C
答案说明:如果方法被final修饰了,该方法不能被重写
•8、
在JDK8之前,一个具体类实现接口时,需要重写接口中的?()
(1分)
o A、成员变量
o B、局部变量
o C、成员方法
o D、构造方法
参考答案:C
答案说明:在JDK8之前,接口中只有常量和抽象方法,所以类实现接口,要重写接口中的抽象方法也就是成员方法
•9、
下面哪个修饰符不可以修饰接口中的成员变量?()
(1分)
o A、public
o B、static
o C、final
o D、private
参考答案:D
答案说明:接口中的成员变量其实是一个常量,用public static final修饰,所以,用private修饰是错误的
•10、
在Java语言中,以下哪个关键字用于在方法上声明抛出异常?
(1分)
o A、try
o B、catch
o C、throws
o D、throw
参考答案:C
答案说明:
•11、
在JDK8以前,下列关于接口的说法中,错误的是?()
(1分)
o A、接口中定义的方法默认使用"public abstract"来修饰
o B、接口中的变量默认使用"public static final"来修饰
o C、接口中的所有方法都是抽象方法
o D、接口中定义的变量可以被修改
参考答案:D
答案说明:接口中定义的变量是常量,不能被修改
•12、
在Java中,要想让一个类继承另一个类,可以使用以下哪个关键字?
(1分)
o A、inherits
o B、implements
o C、extends
o D、modifies
参考答案:C
答案说明:
•13、
下列关于throws关键字的描述中,正确的是()
(1分)
o A、thorws可以声明在方法上也可以声明在方法体中
o B、方法上使用throws抛出一个异常则这个方法中一定有try catch代码块o C、使用throws抛出多个异常时各个异常之间必须使用逗号隔开
o D、throws必须和throw配合使用
参考答案:C
答案说明:throws关键字声明抛出异常的语法格式如下:
修饰符返回值类型方法名([参数1,参数2.....])throws ExceptionType1[,ExceptionType2.....]{ }
•14、
如果类的成员被()访问控制符来修饰,则这个成员只能被该类的其它成员访问,其它类无法直接访问
(1分)
o A、private
o B、default
o C、protected
o D、public
参考答案:A
答案说明:如果类的成员被private访问控制符来修饰,则这个成员只能被该类的其它成员访问,其它类无法直接访问。

类的良好封装就是通过private关键字来实现的
•15、
Java中所有的类都是通过直接或间接地继承()类得到的
(1分)
o A、ng.Object
o B、ng.Class
o C、任意类
o D、以上答案都不对
参考答案:A
答案说明:Object是所有类的父类
•16、
下列符号中,哪个用于分隔throws关键字抛出的多个异常
(1分)
o A、;
o B、,
o C、&
o D、|
参考答案:B
答案说明:方法中如果有多个异常,他们之间使用逗号隔开
•17、
在JDK中,包含大量工具类、集合类的包是()
(1分)
o A、ng
o B、
o C、java.util
o D、java.awt
参考答案:C
答案说明:java.util包包含Java中大量工具类、集合类等
•18、
在下面哪种情况下,可以使用方法重写?()
(1分)
o A、父类方法中的形参不适用于子类使用时
o B、父类中的方法在子类中没有时
o C、父类的功能无法满足子类的需求时
o D、父类方法中的返回值类型不适合子类使用
参考答案:C
答案说明:父类的功能无法满足子类的需求时,这时候可以使用方法的重写。

•19、
下列选项中,用户创建归档文件的jar命令是()
(1分)
o A、jar -c
o B、jar -v
o C、jar -f
o D、jar -x
参考答案:A
答案说明:c参数用于创建归档文件
•20、
jar命令解压缩jar文件,需要的参数是()
(1分)
o A、c
o B、v
o C、x
o D、f
参考答案:C
答案说明:jar解压缩的参数是x
共10题满分:20分
•21、
当子类B继承父类A时,下面描述正确的是()
(2分)
o A、创建类B的对象可以调用类A中的private修饰的成员变量
o B、创建类B的对象可以调用类A中的private修饰的成员方法
o C、创建类B的对象可以调用类A中的public修饰的成员变量
o D、创建类B的对象可以调用类A中的public修饰的成员方法参考答案:C,D
答案说明:在Java中,子类不可以访问父类的私有成员,类的私有成员只能在本类中使用•22、
下列关于try...catch和finally的组合使用,格式正确的是()
(2分)
o A、try{}
o B、try{ }catch(ExceptionType1(Exception子类) e1){ }
catch(ExceptionType2(Exception类及其子类) e2){ }
o C、try{ }catch(ExceptionType(Exception类及其子类) e){ }finally{ }
o D、try{ }finally{ }
参考答案:B,C,D
答案说明:try语句不能单独使用。

•23、
以下关于方法重写,说法错误的是?()
(2分)
o A、方法重写时,子类的函数名与形参列表必须与父类的一致
o B、方法重写时,子类的返回值类型必须大于或者等于父类的返回值类型o C、方法重写时,子类的权限修饰符必须大于或者等于父类的权限修饰符o D、方法重写与返回值类型无关
参考答案:B,D
答案说明:方法重写时,子类的返回值类型必须小于或者等于父类的返回值类型。

且在子类中重写的方法需要和父类被重写的方法具有相同的方法名、参数列表以及返回值类型。

•24、
下列关于throws的描述中,正确的是()
(2分)
o A、throws是用来声明一个方法可能抛出的异常信息
o B、throws语句用在方法声明后面
o C、方法中没有使用catch处理的异常必须使用throws抛出
o D、throws关键字对外声明该方法有可能发生的异常,调用者在调用方法时必须在程序中对异常进行处理
参考答案:A,B,C,D
答案说明:针对这种情况,Java中允许在方法的后面使用throws关键字对外声明该方法有可能发生的异常,这样调用者在调用方法时,就明确地知道该方法有异常,并且必须在程序中对异常进行处理,否则编译无法通过
•25、
以下关于super关键字的说法中,正确的是()
(2分)
o A、super()与this()关键字可以同时存在于同一个构造方法中
o B、super()与this()关键字不能同时存在于同一个构造方法中
o C、super关键字可以调用父类的成员方法
o D、super关键字可以调用父类的构造方法
参考答案:B,C,D
答案说明:super关键字用于访问父类的成员。

例如访问父类的成员变量、成员方法和构造方法。

super和this关键字都必须写在第一行的开头不能同时使用在同一个构造方法中。

•26、
下列关于包的描述,正确的是()
(2分)
o A、使用关键字package定义包
o B、包名的所有字母都小写
o C、包便于对类文件进行管理
o D、包给类文件提供了名称空间
参考答案:A,B,C,D
答案说明:
•27、
下列关于接口的描述中,正确的是?()
(2分)
o A、接口不能直接被实例化
o B、当一个类实现接口时,如果这个类是抽象类,则实现接口中的部分方法即可,否则需要实现接口中的所有方法
o C、一个类通过implements关键字实现接口时,可以实现多个接口,被实现的多个接口之间要用逗号隔开
o D、一个接口可以通过extends关键字继承多个接口,接口之间用逗号隔开参考答案:A,B,C,D
答案说明:接口中的方法都是抽象的,不能实例化对象;
当一个类实现接口时,如果这个类是抽象类,则实现接口中的部分方法即可,否则需要实现接口中的所有方法;
一个类通过implements关键字实现接口时,可以实现多个接口,被实现的多个接口之间要用逗号隔开;
一个接口可以通过extends关键字继承多个接口,接口之间用逗号隔开
•28、
下列关于运行时异常的描述,正确的有()
(2分)
o A、运行异常是在程序运行时期产生的
o B、运行时异常也称为称为unchecked异常
o C、RuntimeException类及其子类都是运行时异常类
o D、运行时异常一般是由于程序中的逻辑错误引起的,在程序运行时无法恢复
参考答案:A,B,C,D
答案说明:
•29、
以下关于抽象类的描述中,正确的是?()
(2分)
o A、抽象类是对一系列看上去不同,但本质上相同的具体概念的抽象
o B、当一个类中包含了抽象方法,该类必须使用abstract关键字来修饰
o C、抽象类可以不定义抽象方法
o D、抽象类不能被实例化
参考答案:A,B,C,D
答案说明:在定义抽象类时需要注意,包含抽象方法的类必须声明为抽象类,但抽象类可以不包含任何抽象方法,只需使用abstract关键字来修饰即可,另外,抽象类是不可以被实例化
•30、
若有父类Animal及其两个子类Cat、Dog,则以下类型转换正确的有()
(2分)
o A、Cat cat = (Cat)new Animal();
o B、Animal a = new Cat(); Cat cat = (Cat) a;
o C、Animal animal = new Cat();
o D、Animal a = new Dog(); Cat cat = (Cat) a;
参考答案:B,C
答案说明:无论是向上还是向下转型,最终都是子类对象做着类型的转换
共20题满分:20分
•31、
在实例化子类对象时,会自动调用父类无参的构造方法
(1分)
o对
o错
参考答案:对
答案说明:在子类的构造方法中通过super指定调用父类的哪个构造方法,如果没有指定,在实例化子类对象时,会自动调用父类无参的构造方法。

•32、
throw关键字后面必须写异常对象
(1分)
o对
o错
参考答案:对
答案说明:throw关键字用在方法内部,后面必须写异常对象
•33、
try..catch语句用于处理程序中的异常
(1分)
o对
o错
参考答案:对
答案说明:try…catch语句异常处理,try中编写被检查可能出现异常的代码,catch用于抓住或者不捕获异常,并处理异常
•34、
接口与接口之间可以单继承,也可以多继承
(1分)
o对
o错
参考答案:对
答案说明:一个接口可以通过extends关键字继承多个接口,接口之间用逗号隔开
•35、
import语句通常出现在package语句之前
(1分)
o对
o错
参考答案:错
答案说明:import语句一定出现在package语句之后
•36、
接口中只能定义常量和抽象方法
(1分)
o对
o错
参考答案:对
答案说明:接口中只能定义常量和抽象方法
•37、
super调用父类构造方法的代码必须位于子类构造方法的第一行
(1分)
o对
o错
参考答案:对
答案说明:super调用父类构造方法的代码必须位于子类构造方法的第一行
•38、
jar命令的参数f可以解压缩jar文件
(1分)
o对
o错
参考答案:错
答案说明:f用于创建文件名
•39、
JDK中定义了大量的异常类,这些异常类足够我们使用了,所以,我们不需要自己定义异常类
(1分)
o对
o错
参考答案:错
答案说明:JDK中定义了大量的异常类,虽然这些异常类可以描述编程时出现的大部分异常情况,但是在程序开发中有时可能需要描述程序中特有的异常情况,所以,我们在开发中还是需要自己定义异常类
•40、
在try…catch语句中,try语句块存放可能发生异常的语句
(1分)
o对
o错
参考答案:对
答案说明:try语句块中存放可能发生异常的语句,一旦发生异常,通过catch语句块进行捕获
•41、
protected修饰的方法,只能给子类使用
(1分)
o对
o错
参考答案:错
答案说明:同一包下的类也可以使用
•42、
方法重写时,子类抛出的异常类型大于等于父类抛出的异常类型
(1分)
o对
o错
参考答案:错
答案说明:方法重写时,子类抛出的异常类型小于等于父类抛出的异常类型。

•43、
父类的引用指向自己子类的对象是多态的一种体现形式
(1分)
o对
o错
参考答案:对
答案说明:在Java中为了实现多态,允许使用一个父类类型的变量来引用一个子类类型的对象,根据被引用子类对象特征的不同,得到不同的运行结果
•44、
如果一个方法要抛出多个异常,可以使用throws进行声明
(1分)
o对
o错
参考答案:对
答案说明:一个方法中可以抛出多个异常,可以使用throws关键字,并且每个异常之间用逗号隔开
•45、
编译异常如果产生了,要求我们在必须处理,要么捕获,要么抛出
(1分)
o对
o错
参考答案:对
答案说明:
•46、
接口可以被多重implements,抽象类只能被单一extends
(1分)
o对
o错
参考答案:对
答案说明:接口可以被多重implements,抽象类只能被单一extends
•47、
在Java中,子类可以访问父类的所有成员
(1分)
o对
o错
参考答案:错
答案说明:在Java中,子类不可以访问父类的私有成员
•48、
接口可以实例化对象
(1分)
o对
o错
参考答案:错
答案说明:当一个类实现接口时,如果这个类是抽象类,则实现接口中的部分方法即可,否则需要实现接口中的所有方法
•49、
任何类都可以写成匿名内部类的形式
(1分)
o对
o错
参考答案:错
答案说明:
•50、
在Java中,针对类、成员方法和属性提供了四种访问级别,分别是private、static、
protected和public
(1分)
o对
o错
参考答案:错
答案说明:在Java中,针对类、成员方法和属性提供了四种访问级别,分别是private、default、protected和public
•51、
定义一个方法,只想被不同包下的子类使用,需要使用访问修饰符【】
(1分)
参考答案:【protected】
答案说明:protected表示受保护权限
•52、
在Java语言中,允许使用已存在的类作为基础创建新的类,这种技术我们称为【】
(1分)
参考答案:【继承】
答案说明:
•53、
【】关键字用于在方法中声明抛出异常的实例对象
(1分)
参考答案:【throw】
答案说明:这时就需要用到throw关键字,throw关键字用于在方法中声明抛出异常的实例对象
•54、
Java中的异常分为两种,一种是【】另外一种是运行时异常
(1分)
参考答案:【编译时异常】
答案说明:Java中的异常分为两种,一种是编译时异常另外一种是运行时异常
•55、
在程序开发中,要想将一个包中的类导入到当前程序中,可以使用【】关键字。

(1分)
参考答案:【import】
答案说明:
•56、
如果子类想使用父类中的成员,可以通过关键字【】引用父类的成员。

(1分)
参考答案:【super】
答案说明:
•57、
Java中的所有类,都直接或者间接的【】自Object类
(1分)
参考答案:【继承】
答案说明:Object类,它是所有类的父类,即每个类都直接或间接继承自该类
•58、
运行时异常的特点是Java编译器【】对其进行检查
(1分)
参考答案:【不会】
答案说明:运行时异常的特点是Java编译器不会对其进行检查,也就是说,当程序中出现这类异常时,即使没有使用try..catch语句捕获或使用throws关键字声明抛出,程序也能编译通过
•59、
在Java语言中,要想是将一个已编译的类打包成jar文件,可以使用的命令是【】,要想在命令行窗口运行jar文件,可以使用的命令是【】
(1分)
参考答案:【jar –cvf】【java –jar】
答案说明:
•60、
RuntimeException类及其子类都是【】异常
(1分)
参考答案:【运行时】
答案说明:
•61、
请在横线处填写正确的关键字, try{}【】(Exception e){}
(1分)
参考答案:【catch】
答案说明:
•62、
throw关键字用于在方法中声明抛出异常的【】
(1分)
参考答案:【实例对象】
答案说明:throw关键字用于在方法中声明抛出异常的实例对象
•63、
Java提供了一个关键字【】,可以判断一个对象是否为某个类(或接口)的实例或者子类实例(1分)
参考答案:【instanceof】
答案说明:Java提供了一个关键字instanceof,它可以判断一个对象是否为某个类(或接口)的实例或者子类实例
•64、
在Java中,【】关键字用于声明包
(1分)
参考答案:【package】
答案说明:Java中的包是专门用来存放类的,通常功能相同的类存放在相同的包中。

在声明包时,使用package语句
•65、
Object类中的equals方法的参数是【】类型的参数
(1分)
参考答案:【Object】
答案说明:equals方法用于比较对象,它的参数是Object类型
•66、
在继承关系中,子类会自动继承父类中的方法,但有时在子类中需要对继承的方法进行一些修改,即对父类的方法进行【】
(1分)
参考答案:【重写】
答案说明:在继承关系中,子类会自动继承父类中定义的方法,但有时在子类中需要对继承的方法进行一些修改,即对父类的方法进行重写。

需要注意的是,在子类中重写的方法需要和父类被重写的方法具有相同的方法名、参数列表以及返回值类型。

•67、
一个类如果要实现一个接口,可以通过关键字【】来实现这个接口
(1分)
参考答案:【implements】
答案说明:接口中的方法都是抽象方法,我们可以定义一个类,并使用implements关键字实现接口中所有的方法
•68、
接口通过关键字【】来继承接口。

(1分)
参考答案:【extends】
答案说明:一个接口可以通过关键字extends来继承接口
•69、
异常的捕获通常由try、catch两部分组成,【】代码块用来存放可能发生异常,【】代码块用来处理产生的异常
(1分)
参考答案:【try】【catch】
答案说明:
•70、
java中,方法上如果可能抛出多个异常,多个异常可以使用【】(中文填写)隔开
(1分)
参考答案:【逗号】
答案说明:方法上如果可能抛出多个异常,多个异常可以使用逗号隔开
共5题满分:20分
•71、
请阅读下面的程序,在空白处填写正确的代码。

class Demo{
public static void main(String[] args){
try{
System.out.println(getArea(6.1,4.1));
}catch(【】 e){}
}
public static double getArea (double d1,doubl d2)throws Eception{
if(d1 <0|| d2 < 0)
throw new Exception();
return d1*d2;
}
}
(4分)
参考答案:Exception
答案说明:
•72、
请简要概述try…catch语句中,try和catch的作用
(4分)
参考答案:try中编写被检查可能出现异常的代码,catch用于抓住或者不捕获异常,并处理异常
答案说明:
•73、
阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果。

否则请说明编译失败的原因。

public class Demo {
public static void main(String[] args) {
new Object(){
public void show(){
System.out.println("helloworld");
}
}.show();
}
}
(4分)
参考答案:helloworld
答案说明:匿名内部类继承了Object类,并自定义了一个show()方法,
* 使用匿名内部类调用show()方法,调用的是子类也就是匿名内部类自身的show()方法, * 编译和运行均能正常进行,因此打印输出了helloworld
•74、
阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果,否则请说明编译失败的原因。

public class Demo {
public static void main(String[] args) {
Father f=new Son();
f.show();
}
}
class Father{
public void show(){
System.out.print("father show");
}
}
class Son extends Father{
public void show(){
super.show();
System.out.print("son show");
}
}
(4分)
参考答案:father showson show
答案说明:在main()方法中,创建Son类的对象,并将其父类也就是Father类的引用指向了该对象,在调用show()方法时,其实调用的是子类的show()方法,子类的show()方法中又通过super关键字调用了父类的show()方法,因此程序先输出了"father show",接着输出了"son show"
•75、
编译时异常的处理方案有几种,分别是什么
(4分)
参考答案:有两种。

方式1:使用try…catch语句对异常进行捕获
方式2:使用throws关键字声明抛出异常,调用者对其处理
答案说明:在Java中,Exception类中除了RuntimeException类及其的子类都是编译时异常。

编译时异常的特点是Java编译器会对其进行检查,如果出现异常就必须对异常进行处理,否则程序无法通过编译。

处理编译时期的异常有两种方式,具体如下:
使用try…catch语句对异常进行捕获
使用throws关键字声明抛出异常,调用者对其处理。

相关文档
最新文档