随笔分类 - J2SE
摘要:死锁是两个甚至多个线程被永久阻塞时的一种运行局面,这种局面的生成伴随着至少两个线程和两个或者多个资源。 死锁例子:public class ThreadDeadlock { public static void main(String[] args) throws Interrupte...
阅读全文
摘要:1、为什么要使用Join()? 因为在很多情况下,主线程生成并起动了子线程,如果子线程里要进行大量的耗时的运算,主线程往往将于子线程之前结束,但是如果主线程处理完其他的事务后,需要用到子线程的处理结果,也就是主线程需要等待子线程执行完成之后再结束,这个时候就要用到join()方法了。2、使用方法:...
阅读全文
摘要:转载:http://blog.csdn.net/vking_wang/article/details/141665931. HashMap的数据结构数据结构中有数组和链表来实现对数据的存储,但这两者基本上是两个极端。数组数组存储区间是连续的,占用内存严重,故空间复杂的很大。但数组的二分查找时间复杂度...
阅读全文
摘要:Java1.5增加了新特性:可变参数:适用于参数个数不确定,类型确定的情况,java把可变参数当做数组处理。注意:可变参数必须位于最后一项。当可变参数个数多余一个时,必将有一个不是最后一项,所以只支持有一个可变参数。因为参数个数不定,所以当其后边还有相同类型参数时,java无法区分传入的参数属于前一...
阅读全文
摘要:上午十一点到了亚朵酒店,大概等了一个多小时,通知面试, 1、开始三分钟自我介绍, 2、接着就开始做题,有两道简单的算法题,在二叉树中查找目标节点和用Stack实现Queue, 3、问String StringBuilder,StringBuffer区别,简单 4、StringBuilde...
阅读全文
摘要:1、什么是TCP/IP? 2、什么是Socket? 3、Socket在哪里? 4、如何使用Socket? 什么是TCP/IP、UDP? TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间协议,是一个工业标准的协议集,它是
阅读全文
摘要:今天在电魂的笔试碰到一道很诡异的题目public class Main { public static void main(String[] args) { try { if(true) throw new Exception(); Sy...
阅读全文
摘要:1、并发模型编程的分类 在并发模型编程中,我们需要解决两个关键问题:线程之间如何通信以及线程之间如何同步。线程之间的通信包括两种:共享内存和消息传递。 Java并发采用的是共享内存模型。2、Java内存模型的抽象 Java内存模型的主要目标是定义程序中各个变量的访问规则,即在虚拟机中将变量存储...
阅读全文
摘要:一、Java内存回收机制 不论哪种语言的内存分配方式,都需要返回所分配内存的真实地址,也就是返回一个指针到内存块的首地址。Java中对象是采用new或者反射的方法创建的,这些对象的创建都是在堆(Heap)中分配的,所有对象的回收都是由Java虚拟机通过垃圾回收机制完成的。GC为了能够正确释放对象,会...
阅读全文
摘要:JVM是虚拟机,也是一种规范,他遵循着冯·诺依曼体系结构的设计原理。冯·诺依曼体系结构中,指出计算机处理的数据和指令都是二进制数,采用存储程序方式不加区分的存储在同一个存储器里,并且顺序执行,指令由操作码和地址码组成,操作码决定了操作类型和所操作的数的数字类型,地址码则指出地址码和操作数。从dos到
阅读全文
摘要:面向对象的三大特征:封装,继承和多态。多态是面向程序设计中代码重用的一个重要机制,它表示当同一操作作用在不同对象时,会有不同的语义。 Java 多态主要有以下两种表现方式: 1)方法重载(overload)。重载是指同一类中有多个同名方法,但是这些方法必须在参数列表上加以区分,要么参数个数不...
阅读全文
摘要:Spring有两个核心的思想,一个是IOC,另一个就是AOP,而这个AOP就是建立在JAVA动态代理基础上的,下面先用一个简单的示例来说明动态代理的用法,然后简单叙述动态代理实现的原理。一、示例实现代理有四个步骤1、创建一个接口public interface Login { void v...
阅读全文
摘要:参考:java static关键字解析
阅读全文
摘要:1、List转数组 采用API中的T[] List.toArray(T[] a) 方法 ,不能直接使用 (T[])list.toArray() 因为数组不能够直接强制转换,例如 Object[] objs={"123","456"}; String[] string...
阅读全文
摘要:转载自:http://lavasoft.blog.51cto.com/62575/273608/ Java开发中,常常会遇到乱码的问题,一旦遇到这种问题,常常就很扯蛋,每个人都不愿意承认是自己的代码有问题。其实编码问题并没有那么神秘,那么不可捉摸,搞清Java的编码本质过程就真相大白了。先看个图:...
阅读全文
摘要:51CTO Java频道 http://developer.51cto.com/java/
阅读全文
摘要:Java动态代理一——动态类Proxy的使用更详细的参考:http://blog.csdn.net/lovelion/article/details/81167041.什么是动态代理?答:动态代理可以提供对另一个对象的访问,同时隐藏实际对象的具体事实。代理一般会实现它所表示的实际对象的接口。代理可以...
阅读全文
摘要:Class 关于Class,直接参考http://lavasoft.blog.51cto.com/62575/15433 Java程序在运行时,Java运行时系统一直对所有的对象进行所谓的运行时类型标识。这项信息纪录了每个对象所属的类。虚拟机通常使用运行时类型信息选准正确方法去执行,用来保存这些...
阅读全文
摘要:前言 泛型 Generic type是JDK1.5引入的一个新特性,允许在定义类和接口的时候使用类型参数(type parameter)。声明的类型参数在使用时用具体的类型来替换。泛型最主要的应用是在JDK 5中的新集合类框架中。 List list=new ArrayList();...
阅读全文