⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 试题精选.txt

📁 面试题 希望对大家有所帮助 成功走向程序员之路
💻 TXT
📖 第 1 页 / 共 5 页
字号:
  可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。
  序列化是为了解决在对对象流进行读写操作时所引发的问题。
  序列化的实现:将需要被序列化的类实现Serializable接口,
  该接口没有需要实现的方法,implements Serializable只是为了标注该对象是可被序列化的,
  然后使用一个输出流(如:FileOutputStream)来构造一个 ObjectOutputStream(对象流)对象,
  接着,使用ObjectOutputStream对象的writeObject(Object obj)方法就可以将参数为obj的对象写出(即保存其状态),
  要恢复的话则用输入流。

106、是否可以从一个static方法内部发出对非static方法的调用?
  不可以,如果其中包含对象的method();不能保证对象初始化.

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

108、在JAVA中,如何跳出当前的多重嵌套循环?
  用break; return 方法。

109、List、Map、Set三个接口,存取元素时,各有什么特点?
  List 以特定次序来持有元素,可有重复元素。Set 无法拥有重复元素,内部排序。Map 保存key-value值,value可多值。

110、J2EE是什么?
  J2EE 是Sun公司提出的多层(multi-diered),分布式(distributed),
  基于组件(component-base)的企业级应用模型 (enterpriese application model).
  在这样的一个应用系统中,可按照功能划分为不同的组件,这些组件又可在不同计算机上,并且处于相应的层次(tier)中。
  所属层次包括客户层(clietn tier)组件,web层和组件,Business层和组件,企业信息系统(EIS)层。

111、UML方面
  标准建模语言UML。用例图,静态图(包括类图、对象图和包图),行为图,交互图(顺序图,合作图),实现图。

112、说出一些常用的类,包,接口,请各举5个
  常用的类:BufferedReader  BufferedWriter  FileReader  FileWirter  String  Integer
  常用的包:java.lang  java.awt  java.io  java.util  java.sql
  常用的接口:Remote  List  Map  Document  NodeList

113、开发中都用到了那些设计模式?用在什么场合?
  每个模式都描述了一个在我们的环境中不断出现的问题,然后描述了该问题的解决方案的核心。
  通过这种方式,你可以无数次地使用那些已有的解决方案,无需在重复相同的工作。主要用到了MVC的设计模式。
  用来开发JSP/Servlet或者J2EE的相关应用。简单工厂模式等。 

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

115、Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
  可以继承其他类或完成其他接口,在swing编程中常用此方式。

116、应用服务器与WEB SERVER的区别?
  应用服务器:Weblogic、Tomcat、Jboss
  WEB SERVER:IIS、 Apache

117、BS与CS的联系与区别。
  C/S是Client/Server的缩写。服务器通常采用高性能的PC、工作站或小型机,并采用大型数据库系统,
    如Oracle、Sybase、Informix或 SQL Server。客户端需要安装专用的客户端软件。
  B/S是Brower/Server的缩写,客户机上只要安装一个浏览器(Browser),
    如Netscape Navigator或Internet Explorer,服务器安装Oracle、Sybase、Informix或 SQL Server等数据库。
    在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现。
    浏览器通过Web Server 同数据库进行数据交互。

  C/S 与 B/S 区别:
   1.硬件环境不同:
     C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务.
     B/S 建立在广域网之上的, 不必是专门的网络硬件环境,例与电话上网, 租用设备. 信息自己管理. 
         有比C/S更强的适应范围, 一般只要有操作系统和浏览器就行
   2.对安全要求不同
     C/S 一般面向相对固定的用户群, 对信息安全的控制能力很强. 一般高度机密的信息系统采用C/S 结构适宜. 
         可以通过B/S发布部分可公开信息.
     B/S 建立在广域网之上, 对安全的控制能力相对弱, 可能面向不可知的用户。
   3.对程序架构不同
     C/S 程序可以更加注重流程, 可以对权限多层次校验, 对系统运行速度可以较少考虑.
     B/S 对安全以及访问速度的多重的考虑, 建立在需要更加优化的基础之上. 比C/S有更高的要求 B/S结构的程序架构
         是发展的趋势, 从MS的.Net系列的BizTalk 2000 Exchange 2000等, 全面支持网络的构件搭建的系统. 
         SUN 和IBM推的JavaBean 构件技术等,使 B/S更加成熟.
   4.软件重用不同
     C/S 程序可以不可避免的整体性考虑, 构件的重用性不如在B/S要求下的构件的重用性好.
     B/S 对的多重结构,要求构件相对独立的功能. 能够相对较好的重用.就入买来的餐桌可以再利用,而不是做在墙上的石头桌子
   5.系统维护不同 
     C/S 程序由于整体性, 必须整体考察, 处理出现的问题以及系统升级. 升级难. 可能是再做一个全新的系统
     B/S 构件组成,方面构件个别的更换,实现系统的无缝升级. 系统维护开销减到最小.用户从网上自己下载安装就可以实现升级.
   6.处理问题不同
     C/S 程序可以处理用户面固定, 并且在相同区域, 安全要求高需求, 与操作系统相关. 应该都是相同的系统
     B/S 建立在广域网上, 面向不同的用户群, 分散地域, 这是C/S无法作到的. 与操作系统平台关系最小.
   7.用户接口不同
     C/S 多是建立的Window平台上,表现方法有限,对程序员普遍要求较高
     B/S 建立在浏览器上, 有更加丰富和生动的表现方式与用户交流. 并且大部分难度减低,减低开发成本.
   8.信息流不同
     C/S 程序一般是典型的中央集权的机械式处理, 交互性相对低
     B/S 信息流向可变化, B-B B-C B-G等信息、流向的变化, 更像交易中心。

118、LINUX下线程,GDI类的解释。
  LINUX实现的就是基于核心轻量级进程的"一对一"线程模型,一个线程实体对应一个核心轻量级进程,
  而线程之间的管理在核外函数库中实现。
  GDI类为图像设备编程接口类库。

119、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属性、国际化的提示和消息。

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

121、内部类可以引用他包含类的成员吗?有没有什么限制?
  一个内部类对象可以访问创建它的外部类对象的内容

122、WEB SERVICE名词解释。JSWDL开发包的介绍。JAXP、JAXM的解释。SOAP、UDDI,WSDL解释。
  Web Service:Web 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注册,以使别的企业能够发现的访问协议的实现标准。 


JAVA代码查错
1.
	abstract class Name {
    private String name;
    public abstract boolean isStupidName(String name) {}
	}
大侠们,这有何错误?
答案: 错。abstract method必须以分号结尾,且不带花括号。

2.
  public class Something {
    void doSomething () {
       private String s = "";
       int l = s.length();
    }
  }
有错吗?
答案: 错。局部变量前不能放置任何访问修饰符 (private,public,和protected)。final可以用来修饰局部变量
(final如同abstract和strictfp,都是非访问修饰符,strictfp只能修饰class和method而非variable)。

3.
  abstract class Something {
    private abstract String doSomething ();
  }
这好像没什么错吧?
答案: 错。abstract的methods不能以private修饰。abstract的methods就是让子类implement(实现)具体细节的,
怎么可以用private把abstract method封锁起来呢? (同理,abstract method前不能加final)。

4.
public class Something {
   public int addOne(final int x) {
       return ++x;
   }
}
这个比较明显。
答案: 错。int x被修饰成final,意味着x不能在addOne method中被修改。

5.
public class Something {
   public static void main(String[] args) {
       Other o = new Other();
       new Something().addOne(o);
   }
   public void addOne(final Other o) {
       o.i++;
   }
}
class Other {
   public int i;
}
和上面的很相似,都是关于final的问题,这有错吗?
答案: 正确。在addOne method中,参数o被修饰成final。如果在addOne method里我们修改了o的reference
(比如: o = new Other();),那么如同上例这题也是错的。但这里修改

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -