`
阅读更多
41.JAVA 语言如何进行异常处理,关键字:throws,throw,try,catch,finally 分别代表什么意义?在try 块中可以抛出异常吗?
Java 通过面向对象的方法进行异常处理,把各种不同的异常进行分类,并提供了良好的接口。在Java 中,每个异常都是一个对象,它是Throwable 类或其它子类的实例。当一个方法出现异常后便抛出一个异常对象,该对象中包含有异常信息,调用这个对象的方法可以捕获到这个异常并进行处理。Java 的异常处理是通过5 个关键词来实现的:try、catch、throw、throws和finally。一般情况下是用try来执行一段程序,如果出现异常,系统会抛出(throws)一个异常,这时候你可以通过它的类型来捕捉(catch)它,或最后(finally)由缺省处理器来处理。用try 来指定一块预防所有"异常"的程序。紧跟在try 程序后面,应包含一个catch 子句来指定你想要捕捉的"异常"的类型。
throw 语句用来明确地抛出一个"异常"。
throws 用来标明一个成员函数可能抛出的各种"异常"。
Finally 为确保一段代码不管发生什么"异常"都被执行一段代码。
可以在一个成员函数调用的外面写一个try 语句,在这个成员函数内部写另一个try 语句保护其他代码。每当遇到一个try 语句,"异常"的框架就放到堆栈上面,直到所有的try 语句都完成。如果下一级的try 语句没有对某种"异常"进行处理,堆栈就会展开,直到遇到有处理这种"异常"的try 语句。

41.java中有几种方法可以实现一个线程?用什么关键字修饰同步方法? stop()和suspend()方法为何不推荐使用?
有两种实现方法,分别是继承Thread 类与实现Runnable 接口用synchronized 关键字修饰同步方法反对使用stop(),是因为它不安全。它会解除由线程获取的所有锁定,而且如果对象处于一种不连贯状态,那么其他线程能在那种状态下检查和修改它们。结果很难检查出真正的问题所在。suspend()方法容易发生死锁。调用suspend()的时候,目标线程会停下来,但却仍然持有在这之前获得的锁定。此时,其他任何线程都不能访问锁定的资源,除非被"挂起"的线程恢复运行。对任何线程来说,如果它们想恢复目标线程,同时又试图使用任何一个锁定的资源,就会造成死锁。所以不应该使用suspend(),而应在自己的Thread 类中置入一个标志,指出线程应该活动还是挂起。若标志指出线程应该挂起,便用 wait()命其进入等待状态。若标志指出线程应当恢复,则用一个notify()重新启动线程。

42.java 中有几种类型的流?JDK 为每种类型的流提供了一些抽象类以供继承,请说出他们
分别是哪些类?
字节流, 字符流。字节流继承于InputStream OutputStream , 字符流继承于InputStreamReader OutputStreamWriter。在java.io 包中还有许多其他的流,主要是为了提高性能和使用方便。

43.垃圾回收器的基本原理是什么?垃圾回收器可以马上回收内存吗?有什么办法主动通知
虚拟机进行垃圾回收?
对于GC 来说,当程序员创建对象时,GC 就开始监控这个对象的地址、大小以及使用情况。通常,GC 采用有向图的方式记录和管理堆(heap)中的所有对象。通过这种方式确定哪些对象是"可达的",哪些对象是"不可达的"。当GC 确定一些对象为"不可达"时,GC 就有责任回收这些内存空间。可以。程序员可以手动执行System.gc(),通知GC 运行,但是Java 语言规范并不保证GC 一定会执行。

44.什么是java 序列化,如何实现java 序列化?
序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题。
序列化的实现:将需要被序列化的类实现Serializable 接口,该接口没有需要实现的方法,implements Serializable 只是为了标注该对象是可被序列化的,然后使用一个输出流(如:FileOutputStream) 来构造一个 ObjectOutputStream( 对象流) 对象, 接着, 使用ObjectOutputStream 对象的writeObject(Object obj)方法就可以将参数为obj 的对象写出(即保存其状态),要恢复的话则用输入流。

45.写clone()方法时,通常都有一行代码,是什么?
Clone 有缺省行为,super.clone();他负责产生正确大小的空间,并逐位复制。

46.jsp 有哪些动作?作用分别是什么?
JSP 共有以下6 种基本动作 jsp:include:在页面被请求的时候引入一个文件。
jsp:useBean:寻找或者实例化一个JavaBean。 jsp:setProperty:设置JavaBean 的属性。
jsp:getProperty:输出某个JavaBean 的属性。 jsp:forward:把请求转到一个新的页面。
jsp:plugin:根据浏览器类型为Java 插件生成OBJECT 或EMBED 标记。

47.STRUTS 的应用(如STRUTS 架构)
Struts 是采用Java Servlet/JavaServer Pages 技术,开发Web 应用程序的开放源码的framework。采用Struts 能开发出基于MVC(Model-View-Controller)设计模式的应用构架。Struts 有如下的主要功能:一.包含一个controller servlet,能将用户的请求发送到相应的Action 对象。二.JSP 自由tag 库,并且在controller servlet 中提供关联支持,帮助开发员创建交互式表单应用。三.提供了一系列实用对象:XML 处理、通过Java reflection APIs自动处理JavaBeans 属性、国际化的提示和消息。

48.Jdo 是什么?
JDO 是Java 对象持久化的新的规范,为java data object 的简称,也是一个用于存取某种数据仓库中的对象的标准化API。JDO 提供了透明的对象存储,因此对开发人员来说,存储数据对象完全不需要额外的代码(如JDBC API 的使用)。这些繁琐的例行工作已经转移到JDO产品提供商身上,使开发人员解脱出来,从而集中时间和精力在业务逻辑上。另外,JDO 很灵活,因为它可以在任何数据底层上运行。JDBC 只是面向关系数据库(RDBMS)JDO 更通用,提供到任何数据底层的存储功能,比如关系数据库、文件、XML 以及对象数据库(ODBMS)等等,使得应用可移植性更强。

49.WEB SERVICE 名词解释。JSWDL 开发包的介绍。JAXP、JAXM 的解释。SOAP、UDDI,WSDL
解释。
Web ServiceWeb Service 是基于网络的、分布式的模块化组件,它执行特定的任务,遵守具体的技术规范,这些规范使得Web Service 能与其他兼容的组件进行互操作。
JAXP(Java API for XML Parsing) 定义了在Java 中使用DOM, SAX, XSLT 的通用的接口。这样在你的程序中你只要使用这些通用的接口,当你需要改变具体的实现时候也不需要修改代码。
JAXM(Java API for XML Messaging) 是为SOAP 通信提供访问方法和传输机制的API。WSDL 是一种 XML 格式,用于将网络服务描述为一组端点,这些端点对包含面向文档信息或面向过程信息的消息进行操作。这种格式首先对操作和消息进行抽象描述,然后将其绑定到具体的网络协议和消息格式上以定义端点。相关的具体端点即组合成为抽象端点(服务)。SOAP 即简单对象访问协议(Simple Object Access Protocol),它是用于交换XML 编码信息的轻量级协议。
UDDI 的目的是为电子商务建立标准;UDDI 是一套基于Web 的、分布式的、为Web Service提供的、信息注册中心的实现标准规范,同时也包含一组使企业能将自身提供的Web Service注册,以使别的企业能够发现的访问协议的实现标准。

50.作用域public,private,protected,以及不写时的区别
  答:区别如下:
 作用域       当前类      同一package      子孙类       其他package
 public         √            √             √              √
 protected      √            √             √              ×
 friendly       √            √             ×              ×
 private        √            ×             ×              ×
  不写时默认为friendly
51.abstract的method是否可同时是static,是否可同时是native,是否可同时是synchronized
答:都不能
52.ArrayList和Vector的区别,HashMap和Hashtable的区别
答:就ArrayList与Vector主要从二方面来说:
1、同步性:Vector是线程安全的,也就是说是同步的,而ArrayList是线程序不安全的,不是同步的
2、数据增长:当需要增长时,Vector默认增长为原来一倍,而ArrayList却是原来的一半
就HashMap与HashTable主要从三方面来说:
1、历史原因:Hashtable是基于陈旧的Dictionary类的,HashMap是Java 1.2引进的Map接口的一个实现
2、同步性:Hashtable是线程安全的,也就是说是同步的,而HashMap是线程序不安全的,不是同步的
3、值:只有HashMap可以让你将空值作为一个表的条目的key或value
53.Servlet执行时一般实现哪几个方法?
  public void init(ServletConfig config)
  public ServletConfig getServletConfig()
  public String getServletInfo()
  public void service(ServletRequest request,ServletResponse response)
  public void destroy()
54.说出数据连接池的工作机制是什么?
  答:J2EE服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接。客户端程序需要连接时,池驱动程序会返回一个未使用的池连接并将其表记为忙。如果当前没有空闲连接,池驱动程序就新建一定数量的连接,新建连接的数量有配置参数决定。当使用的池连接调用完成后,池驱动程序将此连接表记为空闲,其他调用就可以使用这个连接。
55.Java是从()语言改进重新设计。
  A.Ada B.C++ C.Pasacal D.BASIC
  答案:B 
56.下列语句哪一个正确()
  A. Java程序经编译后会产生machine code
  B. Java程序经编译后会产生byte code
  C. Java程序经编译后会产生DLL
  D.以上都不正确
  答案:B 


分享到:
评论

相关推荐

    [最新答案V0.4版]微软等数据结构+算法面试100题[第41-60题答案]

    微软等公司数据结构+算法面试100题之第41-60题答案 --- 答案V0.4版 My Blog:http://blog.csdn.net/v_JULY_v 微软等100题系列,整理资源下载地址:题目系列: 1.[最新整理公布][汇总II]微软等数据结构+算法面试100...

    精美PPT模板41-60

    "精美PPT模板41-60"这个资源集合提供了一组高质量的设计,帮助用户快速创建吸引人的演示文稿,无需从头开始设计。这些模板通常包含各种预设的布局、色彩方案、图表样式以及背景图案,旨在提升内容的视觉呈现,让信息...

    ps2023教程41-60

    ps2023教程41-60

    xpgt540显卡驱动part41-60.zip

    【标题】"xpgt540显卡驱动part41-60.zip" 提供的是华硕XPGT540显卡的驱动程序,这部分涵盖了从41到60的部分分卷文件。在计算机硬件领域,显卡是负责处理图形输出的重要组件,它与操作系统之间的通信依赖于驱动程序。...

    破译财富倍增密码41-60.ppt

    破译财富倍增密码41-60.ppt

    微软等数据结构+算法面试100题[第41-60题答案]

    ### 微软等数据结构+算法面试100题之第41-60题解析 #### 第41题:求固晶机的晶元查找程序 **问题描述**: 在一个晶元盘上,晶元数量未知且不一定全部占据晶元盘的位置。每个晶元的尺寸相同。使用照相机来匹配并...

    VC灵感编程范例源代码(41-60)

    "VC灵感编程范例源代码(41-60)"这一资源集合是为Visual C++(简称VC)开发者提供的一系列编程示例,涵盖了从第41个例子到第60个例子的源代码。这些示例通常旨在帮助开发者理解和掌握在VC环境下进行Windows应用程序...

    系统架构设计师2024上半年真题精讲-第二节41-60题讲义.pptx

    系统架构设计师2024上半年真题精讲-第二节41-60题讲义.pptx

    系统架构设计师2022年11月考点精讲-第三节41-60题讲义.pptx

    系统架构设计师2022年11月考点精讲-第三节41-60题讲义.pptx

    Delphi 6灵感设计范例源代码41-60

    《Delphi 6灵感设计范例源代码41-60》是一份珍贵的资源,专为使用Delphi 6编程的开发者准备。这个压缩包包含40个独特的设计范例,每个范例都展示了Delphi 6在控件使用、数据库应用以及资源管理等方面的强大功能。...

    Java灵感编程范例源代码41-60

    这些文件名为"Java灵感编程范例源代码41-60"的压缩包,是针对Java编程语言的一系列示例代码,涵盖了从第41个到第60个的编程范例。这些范例通常旨在教授Java编程的核心概念、设计模式、算法或特定库的用法,帮助学习...

    lcc源程序分析41-60【PDF版】

    在前文《LCC源程序分析41-60【PDF版】》中,我们介绍了如何将赋值表达式转换成中间表示形式——树,并在此基础上进一步探讨了如何将这种树结构转化为有向无环图(DAG)。本文将继续深入分析这一过程的具体实现细节,...

    93个android项目源码41-60(apk+源码+图片+文档)-共五卷

    "93个android项目源码41-60(apk+源码+图片+文档)-共五卷" 提供了丰富的实践案例,涵盖了从基础应用到复杂功能的多种应用场景。这个压缩包包含了41到60号的10个Android项目,每个项目都提供了apk安装包、源代码、...

    点趣教育乐考网-20年执业药师考试《药二》真题(41-60题).docx

    点趣教育乐考网-20年执业药师考试《药二》真题(41-60题).docx

    江苏学堂: 课程重点 课后作业 看图写话第41-60课.pdf

    以下是对江苏学堂“看图写话第41-60课”中部分课程内容的详细解析: 41. 不要乱扔果皮:这节课旨在教育孩子们保护环境,不随意丢弃垃圾。孩子们可以从图片中看到有人在公共场所扔果皮,然后可能发生的后果,如污染...

    Day41-60_python100_python_

    在Python学习之旅的第四部分,即第41天到60天,你将深入探索Python编程的更多核心概念和技术。这一阶段的学习旨在巩固基础,并拓展你的技能树,为成为熟练的Python开发者打下坚实基础。以下是你在这个阶段可能会遇到...

    Asp 高级技巧 Asp 高级应用 Asp精华 实例41-60

    以下将详细解析标题和描述中提及的实例41至60,这些实例涵盖了Asp的许多重要知识点。 实例41可能涉及动态网页的构建,如使用Response对象输出HTML代码,或者利用Server.Execute实现页面间的跳转和数据共享。通过...

    C#实例程序41-60

    1. **实例41**:可能是一个基础的输入输出(I/O)示例,如读写文件或控制台交互。这涉及到`System.IO`命名空间,例如`StreamReader`和`StreamWriter`类,用于文件操作,以及`Console`类用于处理用户输入和输出。 2....

    [第二部分]精选微软等公司结构+算法面试100题[41-60题]

    根据提供的信息,我们可以总结出这份文档包含了从第41题到第60题的数据结构与算法面试题目。这些题目是从微软等知名公司的面试题目中精选出来的,并由原作者进行了整理和发布。以下是对这些题目的详细解读: ### 第...

Global site tag (gtag.js) - Google Analytics