智慧树知到《面向对象程序设计》章节测试答案

发布时间:2020-06-05 15:10:55

智慧树知到《面向对象程序设计》章节测试答案
第一章
1、下列关于JDK的说法中,错误的是?
A:JDK是Java开发工具包的简称
B:JDK包括Java编译器、Java文档生成工具、Java打包工具等
C:安装JDK后,还需要单独安装JRE
D:JDK是整个Java的核心
正确答案: 安装JDK后,还需要单独安装JRE
2、下列关于classpath环境变量的说法中,哪一个是正确的?
A:classpath配置一次后可永久使用
B:没有classpath环境变量就不能运行Java程序
C:classpath环境变量可以让虚拟机找到class文件的目录
D:查看当前classpath配置的命令是:classpath
正确答案: classpath配置一次后可永久使用
3、下列目录中,哪一个是用来存放JDK核心源代码的?
A:lib目录
lib目录
lib目录
lib目录
lib目录
B:src目录
C:jre目录
jre目录
jre目录
jre目录
D:include目录
正确答案: src目录
4、Java属于以下哪种语言?()
A:机器语言
B:汇编语言
C:高级语言
D:以上都不对
正确答案: 高级语言
5、配置classpath环境变量的目的是为了可以查找到java文件。()
A:对
B:错
正确答案: 错
第二章
1、下列选项中,属于字符常量的是()
A:“a”
B:‘ab'
C:‘1'
D:1
正确答案: ‘1'
2、下面关于字符变量的定义中,错误的是()
A:char a='a'
B:char b=97
C:char c=0x61
D:char d=A
正确答案: char d=A
3、下列选项中,哪一个不能通过编译()
A:byte a=1
B:short b=100
C:int c='a'
D:long d=8888888888
正确答案: long d=8888888888
4、下列数据类型进行运算时,哪一个会发生自动类型提升(     )
A:int + int
B:long + long
C:byte + byte
D:double + double
正确答案: byte + byte
5、数组的最大下标的值比它的长度小1()
A:对
B:错
正确答案: 对
第三章
1、若有如下语句
int x=3;
do{ System.out.println(x);
x-=2;}
while(–x>0);
A:输出的是1
B:输出的是1和-2
C:输出的是3
D:是死循环
正确答案:B
2、下面语句执行结果为()
public static void main(String[] args){
int i=4;
if(i<0){
i=1;}
A:0
B:1
C:2
D:4
正确答案:C
3、当方法中的返回值类型是void时,可以不写return语句()
A:对
B:错
正确答案:A
4、一个类中可以定义多个同名的方法,只要他们的返回值类型不同即可()
A:对
B:错
正确答案:B
5、方法递归次数过多会导致内存溢出()
A:对
B:错
正确答案:A
6、当int x = 3 , y = 4时,表达式boolean b =x == y ? true : false的结果是false()
A:对
B:错
正确答案:A
7、在进行赋值运算时,将运算符右边的值赋给左边的变量()
A:对
B:错
正确答案:A
8、比较运算符用于对两个数值或变量进行比较,其结果是一个布尔值()
A:对
B:错
正确答案:A
9、在switch语句中,每个case关键字后面必须有break()
A:对
B:错
正确答案:B
第四章
1、下列哪个叙述是正确的?()
A:Java应用程序由若干个类所构成,这些类必须在一个源文件中。
B:Java应用程序由若干个类所构成,这些类可以在一个源文件中,也可以分布在若干个源文件中,其中必须有一个源文件含有主类。
C:Java源文件必须含有主类。
D:Java源文件如果含有主类,主类必须是public类。
正确答案:
2、实例变量()
A:是在一个类的内部声明的变量
B:的作用域为整个类
C:可被同一类中的任何方法所访问
D:以上答案都对
正确答案:B
3、类与对象的关系是(      )
A:类是对象的抽象
B:对象是类的抽象
C:对象是类的子类
D:类是对象的具体实例
正确答案:A
4、对象使用时,下面描述错误的是(      )
A:通过“.”运算符调用成员变量和方法
B:对象声明之后即可使用。
C:将一个对象申明为类的成员时,必须在使用前为其分配内存
D:在方法中使用对象作为参数时,采用引用调用
正确答案:C
5、下列关于构造方法定义的描述中,错误的是()
A:方法名与类名相同
B:在方法名的前面没有返回值类型的声明
C:当定义了有参构造方法,系统默认的无参构造方法依然存在
D:在方法中不能使用return语句返回一个值
正确答案:C
第五章
1、下列选项中,可以导入指定包中所有类的是()
A:package包名
B:package 包名.
C:import 包名
D:import 包名.
正确答案:import 包名.*
2、定义主类的类头时可以使用的访问控制符是()
A:private
B:protected
C:public
D:private protected
正确答案:C
3、下面说法正确的是:()
A:如果源代码中有package语句,则该语句必须放在代码的第一行(不考虑注释和空格)
B:如果源代码中有import语句,则该语句必须放在在代码的第一行(不考虑注释和空格)
C:如果源代码中有main()方法,则该方法必须被放在代码的第一行
D:源代码含有class关键字的语句,必须放在代码的第一行
正确答案:
4、JAVA中,访问修饰符限制性最高的是()
A:Private
B:protected
C:public
D:friendly
正确答案:A
5、包的声明只能位于Java源文件的第一行()
A:对
B:错
正确答案:A
第六章
1、下列说法哪个是正确的()
A:子类即可以重载父类的方法,又可以覆盖父类的方法
B:子类只能重载父类的方法,而不能覆盖
C:子类不能定义和父类同名同形参的方法,否则,系统将不知道调用哪个方法
D:子类只能覆盖父类的方法,而不能重载
正确答案:
2、下列哪个类的声明是正确的?()
A:abstract final class HI{} (final代表常量,但是抽象类不能实例化)
B:abstract private move(){} (这是定义方法的)
C:protected private number;   (不是定义类,且修饰符重复)
D:public abstract class Car{}
正确答案:D
3、现有两个类M、N,以下描述中表示N继承自M的是(     )
A:class  M  extends  N
B:class  N  implements  M
C:class  M  implements  N
D:class  N  extends  M
正确答案:D
4、抽象类可以有子类也可以没有子类。()
A:对
B:错
正确答案:B
5、子类的上转型对象就是父类对象。()
A:对
B:错
正确答案:B
第七章
1、以下关于接口对象的说法中正确的是(     )
A:接口只能被类实现,不能用来声明对象
B:接口对象可以用关键词new创建
C:接口对象可以等于任何类的对象
D:接口对象只能等于实现该接口的类的对象
正确答案:D
2、以下哪个接口的定义是正确的?(    )
A:interface B{   void print() { } ;   }
B:abstract interface B  { void print() ; }
C:abstract interface B extends A1,A2 { abstract void print(){ };  }
D:interface B     { void print();}
正确答案:D
3、定义一个接口时,下列哪个关键字用不到?(     )
A:public
B:extends
C:interface
D:class
正确答案:D
4、以下哪项是接口的正确定义?()
A:interface  B
{  void print(){};} (接口里的方法都是抽象的,不能有方法体)
B:abstract  interface  B
{ void print() ;}
C:abstract  interface  B  extends  A1,A2  //A1、A2为已定义的接口
{ abstract  void  print(){  };}
D:interface  B
{  void  print();}
正确答案:D
5、关于接口以下说法正确的是:(     )
A:接口中的变量必须用public static final三个修饰词修饰
B:接口中的方法必须用public abstract两个修饰符修饰
C:一个接口可以继承多个父接口
D:接口的构造方法名必须为接口名
正确答案:AC
第八章
1、在类的UML图中,使用一个三层的长方形描述类的主要构成,其中第一层是()
A:名字层
B:变量层
C:属性层
D:方法层
正确答案:
2、对于面向对象语言,UML中所说的泛化关系是指()
A:类的继承关系
B:实现关系
C:组合关系
D:从属关系
正确答案:A
3、对于下列代码:
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)    }
12) }
第10行语句将调用()语句。
A:第 2行
B:第3行
C:第6行
D:第7行
正确答案:D
4、下图右侧的矩形表示()。
??1.png
A:源代码
B:说明
C:注释
D:以上都不对
正确答案:C
5、在策略设计模式中,如果策略是一个接口,那么具体策略应该是该接口的实现类。()
A:对
B:错
正确答案:A
第九章
1、下列关于匿名内部类的描述,错误的是()
A:匿名内部类是内部类的简化形式
B:匿名内部类的前提是必须要继承父类或实现接口
C:匿名内部类的格式是"new 父类(参数列表) 或 父接口(){}"
D:匿名内部类可以有构造方法
正确答案:D
2、下面程序的运行结果是()
public class Demo {
public static void main(String[] args) {
try {
System.out.println(10 / 0);
System.out.println("除法正常运行");
} catch (ArithmeticException e) {
System.out.println("除数不能为0");
}
}
}
A:编译失败
B:编译通过,没有结果输出
C:输出:除法正常运行
D:输出:除数不能为0
正确答案:D
3、下列关于自定义异常的说法中,错误的是()
A:自定义异常要继承Exception类
B:自定义异常继承Exception类后,具有可抛性
C:自定义异常可以在构造方法中用super关键字传递异常信息给父类
D:自定义异常必须继承Error类
正确答案:D
4、下面()选项可以使用static关键字修饰。
A:成员变量
B:局部变量
C:成员方法
D:成员内部类
正确答案:ACD
5、关于内部类,下面说法正确的是()
A:成员内部类是外嵌类的一个成员,可以访问外嵌类的其它成员
B:外嵌类可以访问成员内部类的成员
C:内部类中不可以声明类变量
D:内部类可以被修饰为static内部类
正确答案:
第十章
1、假设今天为2004年12月16日,以下代码的输出结果正确的是?()
public class FormatDateTime {
public static void main(String[] args) {
Date now = new Date();
SimpleDateFormat myFmt=new
SimpleDateFormat(“yyyy年MM月dd日 HH时mm分ss秒”);
System.out.println(myFmt.format(now));
}
}
A:2004年12月16日17时24分27秒 星期四
B:2004-12-16 17:24:27
C:一年中的第351天一年中第51个星期一月中第3个星期在一天中17时CST时区
D:2004年12月16日17时24分27秒
正确答案:D
2、阅读下面一段代码
Integer in1 = new Integer(10);
Integer in2 = new Integer(10);
Integer in3 = 10;
Integer in4 = 10;
System.out.print(in1 == in2);
System.out.print(in1 == in3);
System.out.print(in3 == in4);
下列选项中,程序的运行结果是()
A:true true true
B:false false true
C:false false false
D:false true false
正确答案:B
3、下列选项中,属于单例设计模式的类是?()
A:Math
B:Calendar
C:Runtime
D:System
正确答案:C
4、阅读下列代码
public class Example {
public static void main(String[] args) {
int[] srcArray = { 11, 12, 13, 14 };
int[] destArray = { 21, 22, 23, 24 };
System.arraycopy(srcArray, 1, destArray, 2, 2);
for (int i = 0; i < destArray.length; i++) {
System.out.print(destArray + " ");
}
}
}
下列选项中,程序的运行结果是?()
A:21 22 12 13
B:21 22 11 12
C:21 11 12 24
D:发生数组角标越界异常
正确答案:
5、System类中提供的属性和方法都是静态的。()
A:对
B:错
正确答案:A
6、System类中的currentTimeMillis()方法返回一个long类型的值。()
A:对
B:错
正确答案:A
7、包装类可以将基本数据类型的值包装为引用数据类型的对象。   ()
A:对
B:错
正确答案:A
8、使用字符串常量可以直接初始化一个String对象。()
A:对
B:错
正确答案:A
9、StringBuffer类似一个字符容器,当在其中添加或删除字符时,并不会产生新的StringBuffer对象。()
A:对
B:错
正确答案:A
10、字符串一旦初始化就不可以被改变。()
A:对
B:错
正确答案:A
第十一章
1、下列选项中,哪一个不是InputStream的直接子类()
A:ByteArrayInputStream
B:FileInputStream
C:BufferedInputStream
D:PipedInputStream
正确答案:
2、以下选项中,哪个是FileOutputStream的父类?()
A:File
B:FileOutput
C:OutputStream
D:InputStream
正确答案:C
3、下列选项中,不属于InputStreamReader类的方法的是()
A:getEncoding()
B:close()
C:read()
D:flush()
正确答案:D
4、所有的字节输入流都从OutputStream类继承,所有的字节输出流都从InputStream类继承。
A:对
B:错
正确答案:B
5、对图片进行读写操作可以采用文件字符流。
A:对
B:错
正确答案:B
第十二章
1、阅读下列的程序
import java.util.*;
class Student {
String name;
String age;
public Student(String name, String age) {
this.name = name;
this.age = age;
}
public String toString() {
return name + ":" + age;
}
}
public class Example{
public static void main(String[] args) {
Set set = new HashSet();
set.add(new Student("Tom", "10"));
set.add(new Student("Jerry", "10"));
set.add(new Student("Tom", "10"));
}
}
下列选项中,程序的运行结果是:set集合中的元素个数为()
A:2
B:3
C:1
D:不固定个数
正确答案:B
2、public class Example {
public static void main(String[] args) {
ArrayList list = new ArrayList();     // 创建ArrayList集合
list.add("Tom");           // 向该集合中添加字符串
list.add("Jerry");
Iterator it = list.iterator();        //获取迭代器
it.next();
it.next();
System.out.println(it.next());
}
}
运行以上程序,输出结果是()
A:Tom
B:null
C:""
D:发生异常,输出异常信息
正确答案:D
3、阅读下列程序
public class Example {
public static void main(String[] args) {
ArrayList list = new ArrayList(); // 创建ArrayList集合
list.add("Tom");        // 向该集合中添加字符串
list.add("Jerry");
list.add("Donald");
for(ListIterator it = list.listIterator();it.hasNext();){
Object object = it.next();
if("Jerry".equals(object)){
it.set("Speike");
}
}
System.out.println(list);
}
}
程序的运行结果是()
A:[Tom, Speike, Donald]
B:[Tom, Jerry, Speike, Donald]
C:[Tom, Donald]
D:[Tom, Jerry, Donald]
正确答案:A
4、LinkedList类的特点是(   )
A:查询快
B:增删快
C:元素不重复
D:元素自然排序
正确答案:B
5、下列有关泛型的代码中,ArrayList<Person> list = new ArrayList<Person>();说法正确的是( ) ?
A:list集合里面只能存放Person对象
B:list集合里面能存放字符串
C:list集合里面能存放Person的子类对象
D:list集合里面可以存放Object类型的对象
正确答案:A
6、下列关于泛型说法不正确的是( )
A:泛型的出现可以把运行时出现的问题提前放到编译时期就发现
B:泛型的出现可以把编译时出现的问题放到运行之后发现
C:泛型可以避免强制类型转换
D:泛型是一种安全机制
正确答案:B
7、下列增强for循环的代码中,有关说法正确的是( )?
for(int x : arr){
System.out.println(x);
}
A:arr必须是一个int数组
B:arr可以是字符串数组
C:arr必须是一个集合
D:arr可以是数组也可以是集合对象
正确答案:D
8、使用HashSet存储对象,如何保证唯一?()
A:重写equals方法
B:让要存储的类实现Compartor,重写pare方法
C:根据成员变量重写HashCode方法和equals方法
D:重写contains方法
正确答案:C
9、在我们所学知识中,下面哪几项是接口( )
A:java.util.Map
B:java.util.Collection
C:java.util.List
D:java.util.Set
正确答案:ABCD
10、关于HashMap集合说法正确的是(     )
A:HashMap集合是双列集合
B:HashMap集合不允许存储重复键
C:HashMap集合不允许存储重复值
D:HashMap集合线程是安全的
正确答案:AB
11、Java中的集合类包括ArrayList、LinkedList、HashMap等类,下列关于集合类
描述正确的是()
A:ArrayList和LinkedList均实现了List接口
B:ArrayList的查询速度比LinkedList快
C:添加和删除元素时,ArrayList的表现更佳
D:HashMap实现Map接口,它允许任何类型的键和值对象,并允许将null用作键或值
正确答案:ABD
第十三章
1、下列哪个叙述是不正确的?()
A:JButton对象可以使用addActionLister(ActionListener l)方法将没有实现ActionListener接口的类的实例注册为自己的监视器。
B:对于有监视器的JTextField文本框,如果该文本框处于活动状态(有输入焦点)时,用户即使不输入文本,只要按回车(Enter)键也可以触发ActionEvent事件
C:监视KeyEvent事件的监视器必须实现KeyListener接口。
D:监视WindowEvent事件的监视器必须实现WindowListener接口。
正确答案:
2、以下选项不正确的是哪一个?()
A:使用FlowLayout布局的容器最多可以添加5个组件。
B:使用BorderLayout布局的容器被划分成5个区域。
C:JPanel的默认布局是FlowLayout布局。
D:JDialog的默认布局是BorderLayout布局。
正确答案:A
3、在Java中,有关菜单的叙述错误的是()
A:下拉式菜单通过出现在菜单条上的名字来可视化表示
B:菜单条通常出现在JFrame的顶部
C:菜单中的菜单项不能再是一个菜单
D:每个菜单可以有许多菜单项
正确答案:C
4、如果容器组件p的布局是BorderLayout,则在p的下部添加一个按钮b,应该使用的语句是()
A:p.add(b,”North”)
B:p.add(b)
C:b.add(p,”North”)
D:p.add(b,”South”)
正确答案:D
5、下列哪一项不属于布局管理器? ( )
A:GridLayout
B:CardLayout
C:BorderLayout
D:BagLayout
正确答案:D
6、在Swing中,哪一个组件可用于输入多行信息? ()
A:JTextArea
B:JTextField
C:JList
D:JComment
正确答案:A
7、所有容器的父类是Frame类。()
A:对
B:错
正确答案:A
8、事件组件都应注册一个事件监听者。()
A:对
B:错
正确答案:A
9、事件监听者除了得知事件发生外,还应调用相应的方法处理事件。()
A:对
B:错
正确答案:A
10、监听器将可以触发某一个事件的动作已经封装到了监听器中。()
A:对
B:错
正确答案:A
第十四章
1、DriverManager类的getConnection(String url,String user,String password)方法中,参数url的格式为jdbc:<子协议>:<子名称>,下列哪个url是不正确的?()
A:”jdbc:mysql://localhost:80/数据库名”
B:”jdbc:odbc:数据源”
C:”jdbc:oracle:[email protected]:端口号:数据库名”
D:”jdbc:sqlserver://172.0.0.1:1443;DatabaseName=数据库名”
正确答案:A
2、在JDBC中,下列哪个接口不能被Connection创建()
A:Statement
B:PreparedStatement
C:CallableStatement
D:RowsetStatement
正确答案:D
3、下面是加载JDBC数据库驱动的代码片段:
try{
Class.forName(".mysql.jdbc.Driver");
}
catch(ClassNotFoundException e){
out.print(e);
}
该程序加载的是哪个驱动?()
A:JDBC-ODBC桥连接驱动
B:部分Java编写本地驱动
C:本地协议纯Java驱动
D:网络纯Java驱动
正确答案:A
4、下面是创建Statement接口并执行executeUpdate方法的代码片段:
conn=DriverManager.getConnection("jdbc:mysql:///book","root","123456");
stmt=conn.createStatement();
String strsql="insert into book values('TP003', 'ASP.NET','李','清华出版社',35)";
n=stmt.executeUpdate(strsql);
代码执行成功后n的值为  ()。
A:1
B:0
C:-1
D:一个整数
正确答案:A
5、下列代码中rs为查询得到的结果集,代码运行后表格的每一行有几个字段()
while(rs.next()){
out.print(rs.getString(1)+” ”);
out.print(rs.getString(2) +” ”);
out.print(rs.getString(3) +” ”);
out.print(rs.getString("publish")++” ”);
out.print(rs.getFloat("price")+" ");
}
A:4
B:5
C:6
D:不确定
正确答案:B
6、下面的代码是连接哪个数据库的驱动加载片段()
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
}
catch(Exception e){
out.print(e.toString());
}
A:Oracle
B:Sql Server
C:MySql
D:不确定
正确答案:B
7、JDBC构建在ODBC基础上,为数据库应用开发人员、数据库前台工具开发人员提供了一种标准,使开发人员可以用任何语言编写完整的数据库应用程序。()
A:对
B:错
正确答案:B
8、JDBC加载不同数据库的驱动程序,使用相应的参数可以建立与各种数据库的连接。()
A:对
B:错
正确答案:A
9、JDBC中的URL提供了一种标识数据库的方法,使DriverManage类能够识别相应的驱动程序。()
A:对
B:错
正确答案:A
10、ResultSet结果集,每一次rs可以看到一行,要在看到下一行,必须使用next()方法移动当前行。()
A:对
B:错
正确答案:B
11、Statement对象提供了int executeUpdate(String sqlStatement)方法,用于实现对数据库中数据的添加、删除和更新操作。 ()
A:对
B:错
正确答案:A
12、Statement对象的executeUpdate(String sqlStatement)方法中,sqlStatement参数是由insert、delete和update等关键字构成的Sql语句,函数返回值为查询所影响的行数,失败返回-1。()
A:对
B:错
正确答案:B

以上问题属网友观点,不代表本站立场,仅供参考!