计算机笔试真题汇总Java篇
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机笔试真题汇总:Java篇
一、基础知识专项练习
1、对抽象类的描述正确的是( )(点击查看答案>>>>>>>>)
A、抽象类的方法都是抽象方法
B、一个类可以继承多个抽象类
C、抽象类不能有构造方法
D、抽象类不能实例化
2、在为传统面向对象语言的程序做单元测试的时候,经常用到mock对象。Mock对象通过反射数。请问反射最大程度破坏了面向对象的以下哪个特性?
(点击查看答案>>>>>>>>)
A、封装
B、多态
C、继承
D、抽象
3、经过强制类型转换以后,变量a, b的值分别为()short a = 128; byte b = (byte) a;(点击查看答案>>>>>>>>)
A、128,127
B、128,-128
C、128,128
D、编译错误
4、一个以“.java”为后缀的源文件(点击查看答案>>>>>>>>)
A、只能包含一个类,类名必须与文件名相同
B、只能包含与文件名相同的类以及其中的内部类
C、只能有一个与文件名相同的类,可以包含其他类
D、可以包含任意类
5、关于String,StringBuilder以及StringBuffer,描述错误的是()
(点击查看答案>>>>>>>>)
A、对string对象的任何改变都不影响到原对象,相关的任何change操作都会生成新的对象
B、StringBuffer是线程安全
C、StringBuilder是线程安全
D、可以修改StringBuilder和StringBuffer的内容
6、子类A继承父类B, A a = new A(); 则父类B构造函数、父类B静态代码块、父类B非静态代码块、子类A构造函数、子类A静态代码块、子类A非静态代码块执行的先后顺序是?(点击查看答案>>>>>>>>)
A、父类B静态代码块->父类B构造函数->子类A静态代码块->父类B非静态代码块->子类A构造函数->子类A非静态代码块
B、父类B静态代码块->父类B构造函数->父类B非静态代码块->子类A静态代码块->子类A构造函数->子类A非静态代码块
C、父类B静态代码块->子类A静态代码块->父类B非静态代码块->父类B构造函数->子类A非静态代码块->子类A构造函数
D 、父类B构造函数->父类B静态代码块->父类B非静态代码块->子类A静态代码块->子类A构造函数->子类A非静态代码块
7、提供java 存取数据库能力的包是( )(点击查看答案>>>>>>>>)
A 、java.sql
B 、java.db;
C 、ng
D 、java.util
8、HashMap 中是用哪些方法来解决哈希冲突的?(点击查看答案>>>>>>>>)
A 、开放地址法
B 、二次哈希法
C 、链地址法
D 、建立一个公共溢出区
9、下面哪个不对?(点击查看答案>>>>>>>>)
A 、RuntimeException is the superclass of those exceptions that can be thrown during the normal operation of the Java Virtual Machine.
B 、A method is not required to declare in its throws clause any subclasses of RuntimeExeption that might be thrown during the execution of the method but not caught
C 、A method is not required to declare in its throws clause any subclasses of RuntimeExeption that might be thrown during the execution of the method but not caught
D 、NullPointerException is one kind of RuntimeException
10、关于sleep()和wait(),以下描述错误的一项是( )(点击查看答案>>>)
A 、sleep 是线程类(Thread )的方法,wait 是Object 类的方法;
B 、sleep 不释放对象锁,wait 放弃对象锁
C 、sleep 暂停线程、但监控状态仍然保持,结束后会自动恢复
D 、wait 后进入等待锁定池,只有针对此对象发出notify 方法后获得对象锁进入运行状态 更多专项练习题目
二、经典编程试题汇总
1、矩形覆盖
(点击实战练习>>>>>>>>>>>>
)
题目描述:
我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n 个2*1的小矩形无重叠地覆盖一个2*n 的大矩形,总共有多少种方法?
2
3
4、复杂链表的复制题目描述:
输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head 。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空)
5、二叉搜索树的后序遍历序列题目描述:
输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No 。假设输入的数组的任意两个数字都互不相同。
6、数组中的逆序对题目描述: 输入描述: 题目保证输入的数组中没有的相同的数字 数据范围:
对于%50的数据,size<=10^4
对于%75的数据,size<=10^5
对于%100的数据,size<=2*10^5
7、数字在排序数组中出现的次数题目描述: 统计一个数字在排序数组中出现的次数。 8、扑克牌顺子题目描述:
LL 今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)...他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子.....LL 不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A 看作1,J 为11,Q 为12,K 为13。上面的5张牌就可以变成“1,2,3,4,5”(大小王分别看作2和4),“So Lucky!”。LL 决定去买体育彩票啦。 现在,要求你使用这幅牌模拟上面的过程,然后告诉我们LL 的运气如何。为了方便起见,你可以认为大小王是0。
表示任意一个但是与"aa.a"/* public class RandomListNode { int label; RandomListNode next = null; RandomListNode random = null; RandomListNode(int label) { bel = label; } } */ public class Solution { public RandomListNode Clone(RandomListNode pHead) { } } public class Solution { public boolean VerifySquenceOfBST(int [] sequence) { } } public class Solution { public int InversePairs(int [] array) { } } public class Solution { public int GetNumberOfK(int [] array , int k) { } }