1️⃣ 网络编程篇&集合体系篇&JDBC篇
一、填空题
- 在类集中存放单值的最大父接口是___________ ,存放一对值的最大父接口是___________ 。
- ___________ 接口保存的数据是不允许重复的,并且___________ 子类是可以排序的,根据___________ 排序。
- Java 类集可以使用的输出方式是___________ 、___________ 、___________ 和___________ 。
- 在 Java 中实现栈操作的类是___________ 。
- 能执行数据库更新的操作接口是___________ 和___________。
- 数据库查询结果使用___________ 接口保存。
- JDBC 中通过___________ 类加载数据库驱动程序。
二、选择题
-
Socket
的工作流程是( )。
①打开连接到Socket
的输入/输出
②按照某个协议对Socket
进行的读/写操作
③ 创建Socket
④ 关闭Socket
A.①③②④
B.②①③④
C.③①②④
D.①②③④ -
下面( )不是
Collection
的子类。
A. ArrayList
B. Vector
C. HashMap
D. TreeSet -
HashSet
子类依靠( )方法区分重复元素。
A. toString() 、equals()
B. clone() 、equals()
C. hashCode() 、equals()
D. getClass() 、clone() -
下列 ( ) 不是
getConnection()
方法的参数。
A. 数据库用户名
B. 数据库的访问密码
C.JDBC 驱动器的版本
D. 连接数据库的URL -
Statement
接口中的executeQuery(String sql)
方法返回的数据类型是( )。
A. Statement 接口实例
B. Connection 接口实例
C. DatabaseMetaData类的对象
D. ResultSet类的对象 -
下列不属于更新数据库操作的步骤的一项是( )。
A. 加载JDBC 驱动程序
B. 定义连接的URL
C. 执行查询操作
D. 执行更新操作
三、 判断题
-
java.net
包为网络通讯包。 ( ) -
ServerSocket
类和Socket
类主要完成 TCP 程序设计。 ( ) -
List
接口中的内容是不能重复的。 ( ) -
TreeSet
是排序类。 ( ) -
Set
接口的内容可以使用Enumeration
接口进行输出。 ( ) -
Map
接口的内容可以使用Listlterator
接口进行输出。 ( ) - JDBC 的驱动程序要在
classpath
中进行配置。 ( ) -
PreparedStatement
是Statement
的子接口,使用PreparedStatement
比使用Statement
性能更高。( )
四、 简答题
- 简述 ArrayList 和 Vector 的区别。
- 简述 HashMap 与 Hashtable 的区别。
- Set 集合中的内容是不允许重复的, Java 依靠什么来判断重复对象?
- TreeSet 类是允许排序的, Java 依靠什么进行对象的排序操作?
- 简述 Collection和 Collections的区别。
五、 编程题
- 使用类集实现以下数据表和简单Java 类的映射实现。
2️⃣ 答案
一、填空题
-
Collection
,Map
-
Set
,SortedSet
,元素自然排序 -
print
、println
、printf
和format
-
Stack
。 -
PreparedStatement
和Statement
ResultSet
Class.forName
二、选择题
- (A)
- (C)
- (C)
- (C)
- (D)
- (C)
三、 判断题
- ( ✔️ )
- ( ✔️ )
- ( ❌ )
- ( ✔️ )
- ( ❌ )
- ( ❌ )
- ( ✔️ )
- ( ✔️ )
四、简答题
-
ArrayList 和 Vector 的区别:
- 同属于 List 接口的实现类,都实现了动态数组的数据结构。
- ArrayList 是非线程安全的,而 Vector 是线程安全的,因此在多线程环境下使用 Vector 可以保证线程安全。
- ArrayList 的性能比 Vector 更好,因为 Vector 是线程安全的,需要进行同步操作,而 ArrayList 不需要。
- 需要注意的是,由于 Vector 是线程安全的,所以在访问和修改集合时需要考虑同步操作的开销,如果不需要线程安全性,推荐使用 ArrayList。
-
HashMap 与 Hashtable 的区别:
- HashMap 和 Hashtable 都是用于存储键-值对的数据结构,实现了 Map 接口。
- HashMap 是非线程安全的,而 Hashtable 是线程安全的。因此,在多线程环境中使用 Hashtable 可以确保线程安全性。
- HashMap 允许使用 null 作为键和值,而 Hashtable 不允许键或值为 null。
- Hashtable 方法是同步的,因此在单线程环境下效率相对较低,而 HashMap 方法不需要同步,效率更高。
-
Set 集合中的内容是不允许重复的,Java 依靠对象的 hashCode() 和 equals() 方法来判断重复对象。当我们将一个对象添加到 Set 集合时,Java 会调用对象的 hashCode() 方法计算哈希值,并根据哈希值判断是否已经存在相同的对象。若哈希值相同,则再通过 equals() 方法来比较两个对象是否相等,如果也相等则视为重复对象不能添加进 Set 集合。
-
TreeSet 类是允许排序的,Java 依靠**对象的自然顺序或者自定义的比较器(Comparator)**来进行对象的排序操作。 TreeSet 在插入元素时会自动根据对象的排序顺序将元素进行有序存储。当使用自定义比较器时,会根据指定的比较规则对元素进行排序。若未提供比较器,则使用对象所实现的 Comparable 接口的 compareTo() 方法来确定对象的顺序。
-
Collection 是 Java 集合框架中包含集合类的最高级接口,它是一个单独的接口。Collections 是 Java 集合框架中的一个工具类,提供了一系列静态方法来对集合进行操作。可以看作是对 Collection 进行操作的工具类。Collection 接口定义了一些通用的集合操作方法,而 Collections 类提供了对集合进行排序、查找、替换等操作的静态方法。简而言之,Collection 是表示集合的接口,而 Collections 是提供集合操作的工具类。
五、 编程题
- 可以使用类集实现以下数据表和简单Java类的映射实现:
(1)部门表:部门编号、部门名称、位置。可以创建一个名为 Department
的Java类,其中包含以下属性:文章来源:https://www.toymoban.com/news/detail-646800.html
public class Department {
private int departmentId;
private String departmentName;
private String location;
// 构造方法、getter和setter方法等
// 可选重写hashCode()和equals()方法,用于判断对象是否相等
}
(2)雇员表:雇员编号、部门编号、姓名、职位、领导、基本工资、佣金。可以创建一个名为 Employee
的Java类,其中包含以下属性:文章来源地址https://www.toymoban.com/news/detail-646800.html
public class Employee {
private int employeeId;
private int departmentId;
private String name;
private String position;
private int supervisorId;
private double baseSalary;
private double commission;
// 构造方法、getter和setter方法等
// 可选重写hashCode()和equals()方法,用于判断对象是否相等
}
到了这里,关于【Java练习题汇总】《第一行代码JAVA》网络编程篇&集合体系篇&JDBC篇,汇总Java练习题——Socket 与ServerSocket、List和Set、Map~的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!