北京捷成世纪科技股份有限公司程序员面试试题
- 格式:doc
- 大小:52.50 KB
- 文档页数:6
第1篇一、前端开发1. 问题:请简述HTML、CSS和JavaScript的关系。
答案:HTML(HyperText Markup Language)是一种用于创建网页的标准标记语言,用于定义网页的结构和内容。
CSS(Cascading Style Sheets)是一种样式表语言,用于描述HTML文档的样式,如字体、颜色、布局等。
JavaScript是一种客户端脚本语言,用于实现网页的交互性,可以通过DOM操作HTML元素,也可以处理表单验证、动画效果等。
2. 问题:请解释一下BFC(Block Formatting Context)的概念。
答案:BFC(Block Formatting Context)是一个独立渲染区域,内部的元素不会影响外部元素的布局,并且BFC内部的元素会垂直地放置。
BFC可以由以下几种情况触发:(1)浮动元素(float不为none);(2)绝对定位元素(position为absolute或fixed);(3)overflow值不为visible的块级元素;(4)根元素;(5)flex容器(flex不为none);(6)grid容器(grid不为none)。
3. 问题:请解释一下什么是闭包,以及闭包的应用场景。
答案:闭包是一个函数和其词法环境的引用的组合。
闭包可以访问定义它的作用域中的变量,即使在外部作用域执行时,这些变量仍然存在。
闭包的应用场景包括:(1)封装私有变量;(2)实现模块化编程;(3)实现事件代理;(4)实现函数柯里化;(5)实现工厂函数。
4. 问题:请解释一下什么是事件冒泡和事件捕获。
答案:事件冒泡是指事件从触发它的元素开始,逐级向上传播到文档根元素的过程。
事件捕获是指事件从文档根元素开始,逐级向下传播到触发事件的元素的过程。
两种传播方式都遵循DOM树结构。
5. 问题:请解释一下响应式设计的概念。
答案:响应式设计是指网页在不同设备上(如手机、平板、PC等)都能良好显示的设计理念。
程序员面试题库及答案在程序员求职的过程中,面试是一个非常重要的环节。
而为了更好地准备面试,掌握程序员面试题库及答案是至关重要的。
下面将为你提供一份程序员面试题库及答案,帮助你在面试中更好地展现自己的技能和知识。
一、数据结构与算法1. 什么是栈?请写出栈的基本操作。
答案:栈是一种具有后进先出(Last In First Out,简称LIFO)特点的数据结构。
栈的基本操作包括入栈(push)、出栈(pop)、获取栈顶元素(top)以及判断栈是否为空(isEmpty)。
2. 什么是队列?请写出队列的基本操作。
答案:队列是一种具有先进先出(First In First Out,简称FIFO)特点的数据结构。
队列的基本操作包括入队(enqueue)、出队(dequeue)、获取队头元素(front)以及判断队列是否为空(isEmpty)。
二、编程语言1. 请简要介绍一下面向对象编程(Object-Oriented Programming, OOP)的概念及特点。
答案:面向对象编程是一种编程范式,它的核心思想是将现实世界的事物抽象成对象,并通过对象之间的交互来完成任务。
面向对象编程的特点包括封装、继承和多态。
2. 请列举几个面向对象编程中常用的设计模式,并简要说明其应用场景。
答案:常用的面向对象编程设计模式包括工厂模式、单例模式和观察者模式。
- 工厂模式用于创建对象,通过工厂类的统一接口来实现对象的创建和初始化。
- 单例模式用于限制某个类只能存在一个实例,常用于全局资源共享或者对象唯一性的场景。
- 观察者模式用于实现对象之间的一对多依赖关系,当一个对象发生改变时,所有依赖它的对象都会得到通知。
三、数据库1. 什么是关系型数据库(Relational Database)?答案:关系型数据库是一种以表格的形式组织数据的数据库系统,通过表之间的关系来建立数据之间的联系。
关系型数据库使用结构化查询语言(Structured Query Language, SQL)进行数据的操作和查询。
软件工程师面试题及答案在当今科技飞速发展的时代,软件工程师成为了备受追捧的职业之一。
而在求职过程中,面试是至关重要的环节。
以下为您呈现一些常见的软件工程师面试题及答案,希望能对您有所帮助。
一、技术类问题1、请简要介绍一下面向对象编程(OOP)的三大特性,以及它们在实际开发中的应用。
答案:面向对象编程的三大特性是封装、继承和多态。
封装是将数据和操作数据的方法封装在一个类中,以实现数据的隐藏和保护,提高代码的安全性和可维护性。
例如,将一个人的个人信息和相关操作封装在一个“Person”类中。
继承允许创建一个新类,从现有类继承属性和方法,实现代码的复用和扩展。
比如,从“Employee”类继承创建“Manager”类。
多态使得同一个方法在不同的对象中有不同的实现方式,增强了程序的灵活性。
比如,在一个图形绘制程序中,不同的图形类(如圆形、方形)都实现了“draw”方法,但具体的绘制方式不同。
2、谈谈你对数据库索引的理解,以及在什么情况下应该使用索引,什么情况下不应该使用?答案:数据库索引是一种用于提高数据检索速度的数据结构。
它类似于书籍的目录,通过索引可以快速定位到所需的数据。
在经常用于查询、连接和排序的列上应该使用索引,比如主键、外键、经常用于搜索的字段等。
然而,在数据量小的表、频繁更新的列、数据分布不均匀的列上不应该使用索引,因为创建和维护索引会带来额外的开销,可能会降低数据插入、更新和删除的性能。
3、解释一下什么是线程安全,以及如何实现线程安全?答案:线程安全是指多个线程同时访问和操作同一共享资源时,程序的执行结果是正确的,不会出现数据不一致或其他异常情况。
实现线程安全的方法有多种,比如使用同步关键字(如 synchronized )来锁定关键代码段,确保同一时刻只有一个线程能够访问共享资源;使用线程安全的集合类(如 ConcurrentHashMap )替代非线程安全的集合类;避免共享可变状态,尽量使用不可变对象等。
科技企业面试试题及答案以下是一些常见的科技企业面试试题以及参考答案:1. 请简要介绍一下你的技术背景和经验。
答案:我拥有计算机科学学士学位,并且在软件开发领域有五年的工作经验。
我熟悉多种编程语言,包括Java、Python和C++,并且参与过多个大型项目的开发与维护。
2. 请谈谈你对敏捷开发方法的理解和应用经验。
答案:敏捷开发方法是一种以快速响应变化和持续交付为核心的软件开发方法。
我在之前的项目中有过与团队合作使用敏捷开发的经验,我们通过迭代开发和持续集成来确保项目的高效推进和质量保证。
3. 请解释一下什么是云计算,并谈谈你对云计算的认识。
答案:云计算是一种通过网络提供计算资源和服务的模式。
它可以提供灵活的计算能力、存储资源以及软件应用程序,用户可以根据需求按需使用这些资源,无需进行昂贵的基础设施建设和维护。
我认为云计算可以帮助企业降低成本、提高效率,并且为创新提供了更多的可能性。
4. 请谈谈你对人工智能的看法和其在科技行业的应用。
答案:人工智能是一门研究如何使计算机能够模拟、扩展和延伸人类智能的学科。
在科技行业,人工智能已经广泛应用于各个领域,如语音识别、图像处理、自动驾驶等。
我认为人工智能的发展将会带来许多创新和改变,对于科技企业来说,掌握和应用人工智能技术将成为必须的竞争优势。
5. 请描述一下你在之前的项目中遇到的最大的挑战以及你是如何应对的。
答案:在之前的项目中,我遇到的最大挑战是项目进度延迟和技术难题。
为了克服这些挑战,我采取了积极主动的态度,与团队成员进行密切沟通和协作,加班加点完成工作,并主动寻求高级工程师的帮助解决技术问题。
最终,我们成功地完成了项目并达到了客户的要求。
以上是一些常见的科技企业面试试题及参考答案,希望对你有所帮助。
祝你面试顺利!。
程序员面试题精选100题1. 什么是面向对象编程(OOP)?列举几种常见的面向对象编程语言。
2. 解释一下封装、继承和多态的概念。
3. 什么是数据结构?列举几种常见的数据结构。
4. 解释一下栈和队列的概念,并提供它们的实际应用场景。
5. 什么是算法?解释一下时间复杂度和空间复杂度的概念。
6. 解释一下HTTP协议的工作原理。
7. 什么是数据库事务?解释一下ACID原则。
8. 解释一下前端开发中的MVC和MVVM模式。
9. 解释一下正向代理和反向代理的区别。
10. 什么是RESTful API?列举一些常见的HTTP请求方法。
11. 解释一下同步和异步的概念,以及它们的区别。
12. 解释一下进程和线程的概念,并提供它们的区别。
13. 解释一下操作系统中的死锁问题,以及如何避免死锁。
14. 解释一下TCP/IP协议族的组成部分。
15. 什么是单元测试?解释一下TDD(测试驱动开发)的概念。
16. 解释一下版本控制系统中的分布式版本控制和集中式版本控制的区别。
17. 什么是软件设计模式?列举几种常见的软件设计模式。
18. 解释一下Web应用程序中的会话管理机制,以及如何处理会话跟踪。
19. 解释一下缓存的工作原理,并提供一些常见的缓存算法。
20. 什么是虚拟机?解释一下虚拟化技术的概念。
21. 解释一下操作系统中的文件系统,以及不同类型的文件系统。
22. 解释一下数据库索引的概念,以及为什么使用索引可以提高查询性能。
23. 什么是反射?解释一下反射在Java中的应用。
24. 解释一下关系型数据库和非关系型数据库的区别。
25. 什么是分布式系统?列举一些常见的分布式系统架构。
26. 解释一下HTTP和HTTPS的区别,以及为什么使用HTTPS更安全。
27. 解释一下云计算的概念,以及云计算的优势和劣势。
28. 什么是容器化?解释一下Docker的工作原理。
29. 解释一下RESTful风格的API设计原则。
高级程序员面试题及答案1.请介绍你在项目中所负责的任务和职责。
答案:在项目中,我主要负责需求分析、设计、编码和测试等工作。
我通过与产品经理和客户沟通,理解需求,并确定技术实现方案,进行系统设计和架构。
同时,我也会与开发团队协作,编写高质量的代码,保证项目进度和质量。
此外,我也负责测试和维护,确保产品的稳定性和可靠性。
2.请谈谈你的开发经验。
答案:我拥有丰富的开发经验,在多个项目中担任过主要开发者和技术负责人。
我能够使用多种编程语言和框架,包括Java、Python、Ruby、Node.js等等。
我也精通多个数据库技术,如MySQL、Oracle、MongoDB等等。
我还有很强的算法和数据结构能力,能够解决复杂的问题。
3.请谈谈你对软件开发的理解。
答案:我认为软件开发不仅仅是编写代码,还需要深入理解业务需求,并将其转化为技术实现方案。
软件开发需要不断学习和改进,关注技术趋势和最佳实践,保证代码的可维护性和扩展性。
同时,软件开发也需要与团队协作,包括产品经理、设计师、测试人员等等,确保项目的成功。
4.请谈谈你在代码质量方面的经验和思路。
答案:在我的工作中,我非常注重代码质量,包括可读性、可维护性、可扩展性和可测试性等方面。
我会使用代码规范和最佳实践来编写高质量的代码。
我还会使用单元测试和集成测试等技术来保证代码的质量和稳定性。
此外,我也会使用代码审查等工具来帮助发现潜在的问题。
5.请谈谈你对RESTful API的理解和使用经验。
答案:我对RESTful API有着深刻的理解和使用经验。
RESTful API是一种基于HTTP协议的API设计风格,它强调资源的URI和HTTP动词的使用。
我会遵循RESTful API的设计原则,使用标准的HTTP动词(GET、POST、PUT、DELETE等),并使用恰当的HTTP状态码和响应格式。
我也会使用Swagger等工具来生成API 文档和进行测试。
6.请谈谈你在数据库方面的经验和能力。
程序员的全部面试题及答案1. 简介在当今的技术领域中,程序员是非常重要的一群人才。
无论是在软件开发公司,还是在互联网企业,程序员都扮演着关键的角色。
为了获得理想的职位,程序员需要通过面试来展示他们的技术能力和知识水平。
本文将介绍一些常见的程序员面试题,并提供相应的答案作为参考。
2. 数据结构和算法2.1. 请解释什么是数据结构,以及常见的数据结构有哪些?数据结构是指数据的组织、存储和管理的方式。
常见的数据结构包括数组、链表、栈、队列、树、图等。
2.2. 请解释什么是算法,以及常见的算法有哪些?算法是指解决问题的一系列步骤和规则。
常见的算法有排序算法(如冒泡排序、快速排序)、查找算法(如二分查找)、图算法(如最短路径算法)等。
2.3. 请解释时间复杂度和空间复杂度分别是什么?时间复杂度是指执行算法所需时间的度量,通常用大O表示。
空间复杂度是指执行算法所需存储空间的度量,也是用大O表示。
2.4. 请给出冒泡排序算法的实现和时间复杂度。
冒泡排序是一种简单的排序算法,基本思想是比较相邻两个元素,如果顺序错误则交换位置。
重复进行该过程直至排序完成。
其时间复杂度为O(n^2)。
2.5. 请给出二分查找算法的实现和时间复杂度。
二分查找是一种在有序数组中快速查找目标元素的算法。
基本思想是比较目标值与数组中间元素的大小,然后决定继续在左半部分或右半部分进行查找。
其时间复杂度为O(logn)。
3. 编程语言相关问题3.1. 请列举几种常见的编程语言,并简单介绍它们的特点。
常见的编程语言包括C、C++、Java、Python、JavaScript等。
C语言是一种高效的系统编程语言,C++是C的扩展,支持面向对象编程。
Java是一种跨平台的编程语言,具有良好的安全性和可移植性。
Python 是一种简洁、易读易写的脚本语言。
JavaScript是用于网页开发的脚本语言,用于增强网页的交互性和动态性。
3.2. 请解释什么是面向对象编程(OOP)?面向对象编程是一种编程范式,它将数据和操作数据的方法封装在一起,将程序看做是对象的集合。
高级程序员岗位面试题及答案1.请谈谈您在之前项目中的技术领导经验,以及如何协调团队成员解决复杂的技术问题。
答案:在上一家公司,我领导了一个小团队,负责开发一个高吞吐量的实时数据处理系统。
我们面临一个性能瓶颈,经过团队讨论,我们实施了多线程并行处理和内存优化,将系统的吞吐量提高了30%。
我确保团队成员充分了解问题,提出解决方案,并协助他们克服难题。
我们持续进行代码审查和技术分享会,以确保团队整体技术水平的提升。
2.请描述一次您在设计和构建复杂系统时遇到的挑战,以及您是如何克服的。
答案:我曾参与一个大规模电子商务平台的构建,遇到了高并发下的数据库性能问题。
我采用了数据库分库分表和缓存策略,将数据库负载分散到不同的节点上,并使用Redis缓存常用数据,从而显著提高了系统的响应速度。
我还优化了数据库查询语句,并引入了索引来加速查询。
最终,我们成功地解决了性能问题,保证了系统的稳定运行。
3.在您的开发过程中,如何确保代码的质量和可维护性?答案:我始终坚持编写可读性强且注释清晰的代码。
我使用代码静态分析工具进行自动化检查,以确保代码符合最佳实践和标准。
另外,我也重视单元测试和集成测试,以及持续集成和持续交付实践,以便及早发现和修复潜在问题。
例如,在一个项目中,我建立了一个自动化测试套件,成功地降低了故障率,并减少了维护成本。
4.如何处理紧急的线上问题?请提供一个实际案例。
答案:当面临紧急线上问题时,我首先会组织一个紧急会议,召集相关团队成员分析问题。
在一个项目中,我们的服务突然出现了严重的性能下降,影响了用户体验。
我立即召集开发、运维和测试团队,通过日志分析和系统监控,我们迅速定位了一个瓶颈,是由于一个复杂查询导致的。
我们暂时降低了查询频率,并发布了一个临时补丁,随后在紧急情况得到解决后,我们进行了全面的代码审查和优化,确保类似问题不再出现。
5.在多人跨部门合作的项目中,如何解决不同团队之间的沟通问题?答案:在一个项目中,我负责与前端、设计和测试团队合作,我们面临了设计变更导致的前后端接口调整问题。
第1篇第一部分:基础知识与理论1. 操作系统- 题目:简述进程与线程的区别。
- 解析:进程是操作系统进行资源分配和调度的一个独立单位,线程是进程中的一个实体,被系统独立调度和分派的基本单位。
进程是线程的容器,一个进程可以包含多个线程。
进程拥有独立的内存空间,而线程共享进程的内存空间。
2. 计算机网络- 题目:请解释TCP和UDP协议的区别。
- 解析:TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,提供数据传输的可靠性。
UDP(用户数据报协议)是一种无连接的、不可靠的、基于数据报的传输层通信协议,提供数据传输的效率。
3. 数据库- 题目:简述数据库事务的四个特性(ACID)。
- 解析:原子性(Atomicity):事务中的所有操作要么全部完成,要么全部不做;一致性(Consistency):事务执行的结果必须是使数据库从一个一致性状态转移到另一个一致性状态;隔离性(Isolation):一个事务的执行不能被其他事务干扰;持久性(Durability):一个事务一旦提交,其所做的更改就会永久保存到数据库中。
4. 数据结构与算法- 题目:请实现一个快速排序算法。
- 解析:快速排序是一种分而治之的排序算法,通过选取一个基准值,将数组分为两部分,一部分小于基准值,另一部分大于基准值,然后递归地对这两部分进行排序。
第二部分:编程能力1. Java- 题目:编写一个Java程序,实现单例模式。
- 解析:单例模式确保一个类只有一个实例,并提供一个全局访问点。
可以通过静态成员变量和静态方法实现。
2. Python- 题目:使用Python编写一个函数,实现字符串的逆序。
- 解析:可以使用切片操作实现字符串的逆序。
3. C++- 题目:请实现一个堆排序算法。
- 解析:堆排序是一种基于比较的排序算法,它通过构建一个最大堆来对数组进行排序。
第三部分:项目经验1. 题目:描述你在过去的项目中遇到的一个技术难题,以及你是如何解决的。
程序员人事面试100题1.问题:请简单介绍一下你自己。
答案:我是[姓名],毕业于[学校名]的[专业名]。
我擅长[技术领域],有[具体年数]年的开发经验。
我对编程充满热情,喜欢挑战自己,不断学习新技术。
2.问题:你的职业规划是什么?答案:我希望在接下来的几年里,能够深入[技术领域],成为该领域的专家。
同时,我也希望能够带领团队完成更多有挑战性的项目。
技术能力3.问题:你最擅长的编程语言是什么?为什么?答案:我最擅长的是Python,因为它的语法简洁易懂,适合快速开发,而且有丰富的库支持。
4.问题:你如何解决遇到的技术难题?答案:当我遇到技术难题时,我会首先尝试自己解决,比如查阅文档、上网搜索等。
如果自己解决不了,我会向同事或社区求助。
团队协作与沟通能力5.问题:你如何与团队成员合作?答案:我认为团队合作非常重要。
我会积极参与团队讨论,分享我的想法,同时也尊重他人的意见。
在合作过程中,我会尽量保持沟通顺畅,及时解决问题。
6.问题:你如何处理与团队成员的冲突?答案:当与团队成员发生冲突时,我会保持冷静,听取对方的观点。
如果是我的问题,我会承认并改正;如果是对方的问题,我会尝试以理服人。
如果双方无法达成一致,我会寻求上级或第三方的帮助。
问题解决与创新能力7.问题:你最近解决的一个技术问题是什么?答案:最近我解决了一个关于数据库性能的问题。
通过优化查询语句和索引,我成功提高了查询速度,减少了系统响应时间。
8.问题:你如何提高自己的创新能力?答案:我认为创新源于不断学习和实践。
我会关注新技术和新趋势,尝试将它们应用到实际工作中。
同时,我也会参加一些技术交流和分享活动,与同行交流思想,激发创新灵感。
9.问题:你如何进行自我提升?答案:我每年都会制定一个学习计划,列出需要掌握的新技术和知识领域。
通过参加在线课程、阅读技术书籍、观看教程视频等方式,不断提升自己的技能水平。
10.问题:你如何平衡工作与生活?答案:为了保持工作与生活的平衡,我会合理安排工作时间,避免加班。
一、单选题(每题1分,共25题)1.为16位Unicode字符流提供和写操作支持的类分别是().A.FileinputStream 类和FileOutputStream 类B.inputStream 类和OutputStream类C.FileReader类和FileWriter类D.BufferedinputStream类和BuifferedOutputStream 类2.能利用对象提供方法获得流对象和实现网络连接的是()A.URL Connection 对象B.B.URL对象C.inetAddress 对象D.Connection 对象3.可序列化类中的writeObject()和readObject()方法使用什么访问控制修饰符()A.publicB.没有访问控制修饰符C.protecedD.private4.下列代码将对象写入的设备是()ByteArrayOutputStream bout=new ByteArrayOutputStream();ObjectOutputStream out=new ObjectoutputStream(bout);out.writeObject(this)Out.close();A.内存B.硬盘C.屏幕D.网络5.Socket类的那个方法返回Socket对象绑定的远程端口()A.getPore( )B.getLocalPort( )C.getRemotePort( )D.不存在这样的方法,因为Socket对象绑定的远程端口对程序是透明的6.对于catch子句的排列,下列哪种是正确的()A.父类在先,子类在后B.子类在先,父类在后C.有继承关系的异常不能再同一个try程序段内D.先有子类,其他如何排列都无关7.以下那个不是Coolection接口的子类或接口( )A.ListB .SetC.MapDqueue8.若重写了某个类的hashCode方法,则必须同时重写它的那个方法()A.不需要B .cloneC.toStringD.equais9.假定Tester类有如下test方法:Public int test(int p1, integer p2)以下哪段代码能正确地动态调用一个Tester对象的test方法?()A.Class class Type =Tester.classObject tester=classtype.new Instance();Method addMethod=classType.getMethod(“test”.new Class[]{int class,int class}];Object result =addMethod.invoke(tester,new Object[](new Integer(100)),new Integer(200)));B. Class classType=Tester.class;Object tester=classType.newInstance();Method addMethod=classType.getMethod(“test”,new Class[](int.class,int.class)));int result=addMethod.invoke(tester,new Object[](new Integer(100),new Integer(200)));C. Class classType=Tester.class;Object tester=classType.newInstance();Method addMethod=classType.getMethod(“test”,new Class[](int.class,int.class));Object result=addMethod.invoke(tester,new Object[](new Integer(100),new Integer(200)));D. Class classType=Tester.class;Object tester=classType.newInstance();Method addMethod=classType.getMethod(“test”,new Class[](int.class,int.class));int result=addMethod.invoke(tester,new Object[](new Integer(100),new Integer(200)));10.调用yield()方法有什么作用?( )A.当前线程停止,知道其他线程终止B.当前线程休眠一段时间,其他线程运行C.所有优先级较低的线程获得CPU时间D.线程将等待,直到被通知11.假设当前文件系统中已经存在文件log.txt,已知该文件内汗ASCII文本,给出下面代码:try{File f=new File(“log.txt”);OutputStream out =new FileOutputStream(f,true);}catch(IOException){}下列哪个结果正确?( )A.代码不能编译B.抛出异常,因为该文件没有关闭C.代码可以编译并运行,对该文件不会有改变D.代码可以编译并运行,并从文件系统删除该文件E.代码可以编译并运行,对将该文件长度设置为012.下面哪个选项可以将”Hello”字符写入文件file.txt的末尾?( )A.OutputStream out =new FileOutputStream(“file.txt”);Out.writeBytes(“Hello”);B.OutputStream os =new FileOutputStream(“file.txt”,true);DataOutputStream out=new DataOutputStream(os);Out.writeBytes(“Hello”);C. OutputStream os =new FileOutputStream(“file.txt”);DataOutputStream out=new DataOutputStream(os);Out.writeBytes(“Hello”);D.OutputStream os =new OutputStream(“file.txt”,true);DataOutputStream out=new DataOutputStream(os);Out.writeBytes(“Hello”);13.下面关于文档对象模型(DOM)的说法,哪个时错误的( )A.面向对象B.与语言和平台无关C.将xml文档表示为树D.可以允许随机访问文档的不同部分14.需要读取一个比较大的文本文件,这个文件里有很多字节的数据,那么读这类文件下列最合适的选哪个?(d)A.newFileinputStream(“”);b. newInputStreamReader(newFileInputSstream(“”);c. newRandomAccestFile(“myfile.txt”+rw”);d.newBufferedReader(newInputStreamReader(newFileInputStream(“fil”)));15.给定下列一个参数t,它继承一个线程类,下列哪个选项可以使该线程停止执行,让其他线程开始运行()A.t.yield()B.Threads.yield( )c. yield(100);d.yield(t);16.以下哪个方法可以获取class类的所有public构造方法( d )A.getdeclaredMethods( )b. getDeclaredFilds( )c.getDeclsredConstructors( )d.get.Constructors( )17.以下哪种属性可以被序列化()A.transient修饰的B.static修饰的C.final 修饰的D.线程18.使用document对象的(a)方法可以得到一个NodeList对象A.getElementsByTagName()B.getElementByTagName()C.getElements()D.getTagName()19.以下方法错误的是(c)A.在i/o中,java使用一个叫utf的系统来支持国际化字符集B.RandomAccessFile类是支持国际化字符集最合适的类C.FileInputStream类的实例不能被连接到FileOutputStream类的实例上D.文件的i/o需要java异常处理20.下面哪个不是ejb规范规定ejb中禁止的操作(d)A.操作线程和线程apiB.对静态属性存取C.加载本地库D.调用同步方法E.将this作为变量和返回21.在以下供选择的方法中,能让线程从阻塞状态回复到就绪状态的方法是(c)A.start( )B.init( )C.resume( )D.run( )22.在java中,关于垃圾回收器强制回收对象的说法中,正确的是(c)建库脚本:A.写一个sql语句显示所有人最后一次发放工资B.写一个sql语句显示张三的工资明细;C.写一个sql语句删除张三的工资明细;23.DOM读取XML文件的顺序是 ( )A. 1.解析XML文件;2.获取解析器对象;3.建立解析器工厂B. 1.解析XML文件;2.建立解析器工厂; 3.获取解析器对象C.1.获取解析器对象;2.建立解析器工厂;3.解析XML文件D. 1.建立解析器工厂2.获取解析器对象;3.解析XML文件24.RMI技术使用的协议是 ( )A.HTTPB.HOPC.SOAPD.JSO25.0-255的正则表达式是( )A.(25[0-5])|(2[0-4]\\w][(1?\\w?\\w)])B.(25[0-25])|(2[0-4]\\w)C.(25[0-5])|(2[0-4]\\d)D.(25[0-5])|(2[0-4]\\d|(1?\\d?\\d))二.判断题(每题1分,公25题)1.Collection 是针对集合类的一个帮助类,他提供一系类静态方法实现对各种各样集合的搜索。
排序。
线程安全化等操作。
( )2.当一个线程进入一个对象的一个Synchronized 方法后,其他线程可以进入此对象的其他Synchronized 方法。
( )3.StringBuilder 与 SrtingBuffer 是同步的 ( )4.调用Lock的lock方法后一定要在catch块中调用其unlock方法以释放锁。
( )5.使用trabsient 关键字可以解释单例模式的double check 问题( )6.挂起一个线程的最佳方法是调用其supend( )方法。