Java笔试精选题库

5星 · 超过95%的资源 需积分: 50 11 下载量 36 浏览量 更新于2024-07-26 2 收藏 969KB PDF 举报
"这份资料是针对Java程序员的笔试题汇总,包含了100家大公司的Java笔试题目,涵盖了Java语言的核心概念、面向对象特性、多线程、异常处理、JDBC等多个方面,旨在帮助求职者准备面试和提升技能。" 在Java编程中,掌握基本概念和语法规则是至关重要的。下面我们将逐一解析这些笔试题中的知识点: 1. 抽象修饰符(abstract)只能修饰类和方法,不能修饰字段。因此,选项A是错误的。抽象方法没有方法体,不需要大括号,选项B和C也是错误的,选项D是正确的。 2. 这段代码展示了静态变量和非静态方法的交互。`aMethod()`是实例方法,但尝试访问静态变量`i`,这是允许的。每次调用`aMethod()`,`i`都会自增,所以`main`方法中第二次调用`aMethod()`时,`i`的值为1。因此,`j`的值为1,输出结果是1,选项D是正确答案。 3. 实例方法通过`super`关键字调用超类的实例方法,选项A错误。类方法(静态方法)可以通过类名直接调用,不受继承关系影响,选项B正确。实例方法不能直接调用其他类的实例方法,需要先创建对象,选项C错误。实例方法可以调用本类的类方法,选项D正确。 4. 这段代码涉及方法重写和类型转换。`Super`类有一个返回`Integer`的方法,而`Sub`类重写了这个方法返回`Long`。由于`sooper`是`Super`类型的引用,调用`getLenght()`会返回一个`Integer`对象,`sub`是`Sub`类型的引用,调用`getLenght()`返回`Long`对象。两个不同类型的对象调用`toString()`方法会打印出它们各自的字符串表示,所以输出是"4,5",选项B正确。 5. Servlet容器通常以线程的方式处理请求,因此选项C是正确的。每个请求会被分配到一个新的线程来执行,而不是创建新的进程或响应。 6. JDBC(Java Database Connectivity)是Java中用于访问数据库的API。`Connection`对象代表了与数据库的连接,选项B正确。`Statement`对象则用于执行SQL语句。 这些题目展示了Java中的关键概念,包括抽象、继承、方法重写、静态变量、线程处理以及JDBC的基本操作。理解并熟练掌握这些知识点对于Java程序员来说至关重要。通过解决这些题目,求职者可以检验自己的Java基础,并找到需要加强的地方。