2013年10月26日

常见和链表相关的算法

摘要: 一、 链表排序 链表排序和数组排序的思路类似,只是链表操作起来比较麻烦,因为不能随机访问,所以只能借助于类似于前置或后置插入,添加等概念来完成。下面给出了链表排序的几种方法。辅助代码://单链表节点的定义typedef struct LinkNode{ int val; struct LinkNode* next;}LinkNode;//由一个数组创建单链表LinkNode* CreateList(int A[], int count){ if(NULL == A) return NULL; LinkNode* head = (LinkNode*)malloc(sizeof(LinkNode) 阅读全文

posted @ 2013-10-26 21:46 heartstage 阅读(575) 评论(0) 推荐(0)

常见概念问题

摘要: WEBSERVICE名词解释。JSWDL开发包的介绍。JAXP、JAXM的解释。SOAP、UDDI,WSDL解释。答:WebServiceWebService是基于网络的、分布式的模块化组件,它执行特定的任务,遵守具体的技术规范,这些规范使得WebService能与其他兼容的组件进行互操作。JAXP(JavaAPIforXMLParsing)定义了在Java中使用DOM,SAX,XSLT的通用的接口。这样在你的程序中你只要使用这些通用的接口,当你需要改变具体的实现时候也不需要修改代码。JAXM(JavaAPIforXMLMessaging)是为SOAP通信提供访问方法和传输机制的API。WSD 阅读全文

posted @ 2013-10-26 20:27 heartstage 阅读(224) 评论(0) 推荐(0)

App Class Loader

摘要: Java本身是一种设计的非常简单,非常精巧的语言,所以Java背后的原理也很简单,归结起来就是两点:1、JVM的内存管理理解了这一点,所有和对象相关的问题统统都能解决2、JVM Class Loader理解了这一点,所有和Java相关的配置问题,包括各种App Server的配置,应用的发布问题统统都能解决App Class Loader|----- EJB Class Loader|----- Web App Class Loader如果在App Class Loader级别配置,是全局可见的。如果打包在EJB里面,那么就不会影响到Web Application,反之亦然,如果你在WEB-I 阅读全文

posted @ 2013-10-26 16:55 heartstage 阅读(408) 评论(0) 推荐(0)

java中的异常处理机制

摘要: 异常处理:java中的异常处理机制主要依赖于try,catch,finally,throw,throws五个关键字。其中,try关键字后紧跟一个花括号括起来的代码块(花括号不可省略)简称为try块。里面放置可能发生异常的代码。catch后对应异常类型和一个代码块,用于表明该catch块用于处理这种类型的代码块。多个catch块后还可以跟一个finally块。finally块用于回收再try块里打开的物理资源,异常机制会保证finally块总被执行。throws关键字主要在方法签名中使用,用于声明该方法可能抛出的异常throw用于抛出一个实际的异常,throw可以单独作为语句使用,抛出一个具体异 阅读全文

posted @ 2013-10-26 16:54 heartstage 阅读(609) 评论(0) 推荐(0)

JVM内存管理------GC简介

摘要: 为何要了解GC策略与原理? 原因在上一章其实已经有所触及,就是因为在平时的工作和研究当中,不可避免的会遇到内存溢出与内存泄露的问题。如果对GC策略与原理不了解的情况下碰到了前面所说的问题,很多时候会让人不知所措。 当我们了解了相关知识以后,虽然有时候依然不能很快的解决问题,但可以肯定的是,至少不会出现无计可施的情况。GC策略解决了哪些问题? 既然是要进行自动GC,那必然会有相应的策略,而这些策略解决了哪些问题呢,粗略的来说,主要有以下几点。 1、哪些对象可以被回收。 2、何时回收这些对象。 3、采用什么样的方式回收。 GC策略采用的何种算法 ... 阅读全文

posted @ 2013-10-26 16:52 heartstage 阅读(172) 评论(0) 推荐(0)

JVM内存管理------JAVA语言的内存管理概述

摘要: 引言 内存管理一直是JAVA语言自豪与骄傲的资本,它让JAVA程序员基本上可以彻底忽略与内存管理相关的细节,只专注于业务逻辑。不过世界上不存在十全十美的好事,在带来了便利的同时,也因此引入了很多令人抓狂的内存溢出和泄露的问题。 可怕的事情还不只如此,有些使用其它语言开发的程序员,给JAVA程序员扣上了一个“不懂内存”的帽子,这着实有点让人难以接受。毕竟JAVA当中没有malloc和delete、没有析构函数、没有指针,刚开始接触JAVA的程序员们又怎么可能接触内存这一部分呢,更何况有不少JAVA程序员还是跳了专业半路出家的朋友。 不过事实尽管难以接受,但也确实有不少JAVA程序员对内... 阅读全文

posted @ 2013-10-26 16:51 heartstage 阅读(236) 评论(0) 推荐(0)

HashSet如何排序

摘要: 方法一:把HashSet保存在ArrayList里,再用Collections.sort()方法比較[java] view plaincopyprint?privatevoiddoSort(){finalHashSetva=newHashSet();va.add(2007111315);va.add(2007111314);va.add(2007111318);va.add(2007111313);finalListlist=newArrayList();for(finalIntegervalue:va){list.add(value);}Collections.sort(list);Syst 阅读全文

posted @ 2013-10-26 16:47 heartstage 阅读(7836) 评论(0) 推荐(0)

Java中堆和栈有什么区别

摘要: stack 和 heep 都是内存的一部分stack 空间小,速度比较快, 用来放对象的引用heep 大,一般所有创建的对象都放在这里。栈(stack):是一个先进后出的数据结构,通常用于保存方法(函数)中的参数,局部变量.在java中,所有基本类型和引用类型都在栈中存储.栈中数据的生存空间一般在当前scopes内(就是由{...}括起来的区域).堆(heap):是一个可动态申请的内存空间(其记录空闲内存空间的链表由操作系统维护),C中的malloc语句所产生的内存空间就在堆中.在java中,所有使用new xxx()构造出来的对象都在堆中存储,当垃圾回收器检测到某对象未被引用,则自动销毁该对 阅读全文

posted @ 2013-10-26 16:45 heartstage 阅读(752) 评论(0) 推荐(0)

forward与redirect的区别

摘要: 1.从地址栏显示来说forward是服务器请求资源,服务器直接访问目标地址的URL,把那个URL的响应内容读取过来,然后把这些内容再发给浏览器.浏览器根本不知道服务器发送的内容从哪里来的,所以它的地址栏还是原来的地址.redirect是服务端根据逻辑,发送一个状态码,告诉浏览器重新去请求那个地址.所以地址栏显示的是新的URL.2.从数据共享来说forward:转发页面和转发到的页面可以共享request里面的数据.redirect:不能共享数据.3.从运用地方来说forward:一般用于用户登陆的时候,根据角色转发到相应的模块.redirect:一般用于用户注销登陆时返回主页面和跳转到其它的网 阅读全文

posted @ 2013-10-26 16:42 heartstage 阅读(323) 评论(0) 推荐(0)

Static和Final修饰类属性变量及初始化

摘要: 1.static修饰一个属性字段,那么这个属性字段将成为类本身的资源,public修饰为共有的,可以在类的外部通过test.a来访问此属性;在类内部任何地方可以使用.如果被修饰为private私有,那么只能在类内部使用. public class Test{public static int a;private Test(){a=0;}}如果属性被修饰为static静态类资源,那么这个字段永远只有一个,也就是说不管你new test()多少个类的对象,操作的永远都只是属于类的那一块内存资源.例如: Test t1=new Test();t1.a=10;Test t2=new Test();Sy 阅读全文

posted @ 2013-10-26 16:42 heartstage 阅读(1038) 评论(0) 推荐(0)

浅谈Java中final,finalized,finally

摘要: final: final可以让你控制你的成员、方法或者是一个类是否可被覆写或继承等功能,这些特点使final在Java中拥有了一个不可或缺的地位,也是学习Java时必须要知道和掌握的关键字之一。 final成员 当你在类中定义变量时,在其前面加上final关键字,那便是说,这个变量一旦被初始化便不可改变,这里不可改变的意思对基本类型来说是其值不可变,而对于对象变量来说其引用不可再变。其初始化可以在两个地方,一是其定义处,二是在构造函数中,两者只能选其一。 下面程序很简单的演示了final的常规用法: publicclassTest{ finalintt=1;//在定义时给值 //或者(两者只能 阅读全文

posted @ 2013-10-26 16:41 heartstage 阅读(410) 评论(0) 推荐(0)

TestList汇总

摘要: 【基本类型】类的构造方法调用问题重载复写的区别Final finally finalized 的区别定义final变量是否需要初始化forward和redirect的区别equals方法和hashcode方法的联系HashMap 和 HashSet 有没有什么关联?HashMap与Hashtable的区别? 如何让HashMap同步?对象的hashcode 相同, 对象就相同吗Describe how virtual functions are implementedhashset如何排序为什么在实现equels()方法前要先实现hash Code()方法package function pr 阅读全文

posted @ 2013-10-26 16:38 heartstage 阅读(521) 评论(0) 推荐(0)

Linux/Unix面试题

摘要: shell中如何改变文件中的某个关键字unix命令unix shell中在特定文件夹内查找包含指定字符串的文件用哪个命令如何用要shell找到指定目录下的最近一天更新的文件,要包含子目录Linux中编辑文件的命令 阅读全文

posted @ 2013-10-26 16:00 heartstage 阅读(300) 评论(0) 推荐(0)

Web/JAVA 简单题目汇总

摘要: 【Java标识符,变量、常量】一。Java合法标识符命名规则(1)区分字母大小写,标识符长度不限 (2) 英文,Unicode码双字节文字字符(日文,韩文,中文),数字,下划线,$(美元符号)均可,但不能以数字打头。(3)不能使用关键字以及除(2)之外的字符,如‘#’‘.’。。。等二。Java中停用关键字 goto,const是C语言使用关键字,由于缺点很多,Java中停用了这些字符。---------------------------------------------------------------------------------------------------------- 阅读全文

posted @ 2013-10-26 15:36 heartstage 阅读(193) 评论(0) 推荐(0)

java中list、set和map 的区别

摘要: List按对象进入的顺序保存对象,不做排序或编辑操作。Set对每个对象只接受一次,并使用自己内部的排序方法(通常,你只关心某个元素是否属于Set,而不关心它的顺序--否则应该使用List)。Map同样对每个元素保存一份,但这是基于"键"的,Map也有内置的排序,因而不关心元素添加的顺序。如果添加元素的顺序对你很重要,应该使用 LinkedHashSet或者LinkedHashMap. List的功能方法 实际上有两种List: 一种是基本的ArrayList,其优点在于随机访问元素,另一种是更强大的LinkedList,它并不是为快速随机访问设计的,而是具有一套更通用的方法 阅读全文

posted @ 2013-10-26 14:43 heartstage 阅读(197) 评论(0) 推荐(0)

Union与UnionAll

摘要: UNION指令的目的是将两个SQL语句的结果合并起来。从这个角度来看, 我们会产生这样的感觉,UNION跟JOIN似乎有些许类似,因为这两个指令都可以由多个表格中撷取资料。 UNION的一个限制是两个SQL语句所产生的栏位需要是同样的资料种类。另外,当我们用 UNION这个指令时,我们只会看到不同的资料值 (类似 SELECT DISTINCT)。UNION只是将两个结果联结起来一起显示,并不是联结两个表。order by子句必须写在最后一个结果集里,并且其排序规则将改变操作后的排序结果。对于Union、Union All、Intersect、Minus都有效。其他的集合操作符,如Inters 阅读全文

posted @ 2013-10-26 14:40 heartstage 阅读(429) 评论(0) 推荐(0)

银行面试题

摘要: 1. 英语介绍自己的工作经历2. 英语介绍自己的项目经验(不限于最新的项目)3. 关于项目、软件过程的了解4. 项目中用到的技术,如Spring架构、数据库的调试(工具使用)5. 是否用过unix1. 谈谈对J2EE 三层结构的理解2. 接口与抽象类的区别3. 垃圾回收的机制与调用方法4. 是否用过多线程5. int和Integer的区别;它们的初始化值是什么?6. 是否用过Vector;List与Set的区别;hashmap和hashtable的区别8. 什么是Iterator?9. final、finally、finalize的区别11. class和Instance的区别12. over 阅读全文

posted @ 2013-10-26 14:33 heartstage 阅读(874) 评论(1) 推荐(0)

银行面试题汇总

摘要: 技术类的题目,侧重于java、linux、oracle方面的知识,毕竟银行的业务用这些知识的机会多,当然考题都比较基础,但是有一个题,我觉得是很有必要准备的,那就是“sax和dom在解析xml文档时有什么区别?”,细想之,应该是数据处理常用技术,因此比较重要在面试中面向对象基础知识、设计模式肯定是他们非常重视的了,这个又和业务相关,如果你熟悉Spring框架的话,一定要表现出来,或者你熟悉oracle的话,也一定要让面试官知道。oracle优化、维护这些知识如果你能清晰的讲清楚,肯定会得到很多加分,如果不是很懂,最好就别谈这个话题。个人觉得Spring开发框架对于想进入银行或者做类似业务工作的 阅读全文

posted @ 2013-10-26 14:08 heartstage 阅读(748) 评论(0) 推荐(0)

汇丰银行面试小结

摘要: 第一面是国内的技术官面试,问了些有关线程问题,还有垃圾回收机制的若干问题(这些问题其实是需要深究Java的垃圾回收机制才能 答出来的—-》 垃圾回收如果出现错误,会导致程序产生怎样的异常等等)。第二面是一个小时的英语电话面试(因为该岗位需要经常到海外出差等等所以才有了英文的面试)— > 这次主要面试的是数据库方面的技术,已经常见的异常处理机制。 还有当你的应用出现了异常的时候你是怎样从Java的角度分析问题,需要获取什么的信息以供分析问题,解决问题。---------------------------------------------------------------------- 阅读全文

posted @ 2013-10-26 12:48 heartstage 阅读(1023) 评论(0) 推荐(0)

TCP/IP,http,socket,长连接,短连接 —— 小结

摘要: TCP/IP是什么? TCP/IP是个协议组,可分为三个层次:网络层、传输层和应用层。 在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。 在传输层中有TCP协议与UDP协议。 在应用层有FTP、HTTP、TELNET、SMTP、DNS等协议。Socket是什么呢? Socket是应用层与TCP/IP协议族通信的中间软件抽象层,一组接口,把复杂的TCP/IP协议族隐藏在Socket接口后面。 所以HTTP就是TCP/IP应用层的协议。Socket是他们的软件抽象层。短连接: 连接->传输数据->关闭连接 HTTP是无状态的,浏览器和服务器每进行一次HTT. 阅读全文

posted @ 2013-10-26 12:38 heartstage 阅读(437) 评论(0) 推荐(0)

导航