排序:
默认
按更新时间
按访问量

多线程同步的五种方法

本文参考于http://www.kuqin.com/shuoit/20150910/347986.html?url_type=39&object_type=webpage&pos=1 1、同步方法;2、同步代码块;3、使用特殊域变量(volatile)实现线程同步; volati...

2016-09-07 10:31:36

阅读数:3631

评论数:0

接口与抽象类

接口: (1)接口可继承多个接口; (2)成员变量默认public static final,必须显示初始化; (3)方法默认public abstract,隐式声明; (4)无构造,且不能实例化; (5)不能实现另一个接口,但可继承多个接口; (6)若某个类实现一个接口,必须实现接口...

2016-09-03 00:59:53

阅读数:241

评论数:0

java集合的底层实现

ArrayList (1)底层采用数组实现,若使用不带参数的构造方法,则生成长度为10的Object类型数组。 (2)若个数超过10,则生成一个新数组,长度为原数组的1.5倍+1,原数组的内容复制到新数组中。 (3)删除时,后续前移,代价高。 HashMap (1)HashMap是基于哈...

2016-08-16 22:48:11

阅读数:5434

评论数:0

垃圾收集算法

1、标记-清除 标记所有需要回收的对象,在标记完成后统一回收掉所有被标记的对象。 缺点:效率问题;空间问题:产生了大量不连续的内存碎片,进而导致需要分配较大对象时无法找到足够的连续内存而提前触发另一次垃圾收集动作。 2、改进:复制 内存一分为二,用空一块,把活着对象复制到另一块,清空原来那...

2016-08-14 12:15:37

阅读数:112

评论数:0

java引用的类型

(1)强引用 new出来的,只要强引用还存在,收集器不会回收掉被引用的对象。 (2)软引用(还有用,非必须对象) 在系统内存溢出异常之前,将这些对象引进回收范围之中并进行第二次回收,若回收后内存仍不足,则抛溢出异常。Softreference类实现软引用。 (3)弱引用(非必须) 被弱引...

2016-08-14 11:54:08

阅读数:124

评论数:0

判断对象是否已死的算法

(1)引用计数算法,给每个对象添加一个引用计数器,每当有一个地方引用它时,计数器值就加1;当引用失效时,就减1;任何时刻都为0的对象就不可能再被引用。 缺点:很难解决对象之间的相互循环引用问题 (2)根搜索算法 “GC Roots”的对象作为起始点,从这些节点开始向下搜索,搜索所走过的路径成...

2016-08-14 11:34:40

阅读数:156

评论数:0

Java虚拟机模型区溢出的处理方式

1、堆溢出 采用内存映像工具(如Eclipse Momery Analyzer)对dump出来的堆存储快照进行分析,重点hi确认内存中的对象是否是必须的,先分清楚是泄露还是溢出。 若是泄露,进一步通过工具查看泄漏对象到GC Roots的引用链,观察泄漏对象是通过怎...

2016-08-14 09:43:45

阅读数:168

评论数:0

java虚拟机模型

本文内容部分摘自:http://blog.csdn.net/taohuaxinmu123/article/details/24472073 java虚拟机在执行java程序的过程中会把它锁管理的内存划分为若干个不同的数据区域: (1)程序计数器:它的作用是当前线程所执行的字节码的行号指示器,字...

2016-08-13 18:22:09

阅读数:173

评论数:0

java中的clone

1、作用:取代C/C++中的指针。因为,java在处理基本数据类型时,采用按值传递的方式执行,而其他类型是按引用传递的。但在某些情境下,需要保证复制出来的对象进行修改后,原有的对象不发生变化。在Prototype中,就需要用clone出一个对象。 2、实现步骤: 继承Cloneable接口,仅仅...

2016-04-20 18:48:25

阅读数:171

评论数:0

剑指offer习题2

逆序链表 public ListNode ReverseList(ListNode listNode){ if(listNode==null) return null; else { ArrayList<...

2015-09-28 16:49:13

阅读数:123

评论数:0

静态内部类和非静态内部类的区别

转载地址:http://www.cnblogs.com/devinzhang/archive/2012/02/09/2344105.html

2015-07-16 21:57:54

阅读数:143

评论数:0

java取反运算

~:是按位取反,不区分符号位和数字位 一个简单的计算法: ~i = (-i)-1 例如: i = 45678;        ~i = -i-1= -45679

2015-07-15 21:33:36

阅读数:2521

评论数:0

在线java编辑器

http://www.mcqyy.com/RunCode/java/

2015-07-14 20:46:21

阅读数:3220

评论数:0

java笔记-竞考网错题

1、Set接口主要实现了两个实现类:   HashSet : HashSet类按照哈希算法来存取集合中的对象,存取速度比较快。   TreeSet : TreeSet类实现了SortedSet接口,能够对集合中的对象进行排序。   Set 的用法:存放的是对象的引用,没有重复对象。 2...

2015-07-10 14:03:40

阅读数:760

评论数:0

java面试题集锦

参考地址:http://blog.csdn.net/jackfrued/article/details/17403101 1、TreeMap和TreeSet在排序时如何比较元素?Collections工具类中的sort()方法如何比较元素?答:TreeSet要求存放的对象所属的类必须实现Comp...

2015-07-09 21:20:25

阅读数:563

评论数:0

Java内存分配和String类型的深度解析***

转载地址http://www.codeceo.com/article/java-memory-string.html

2015-07-08 19:44:06

阅读数:173

评论数:0

大公司最喜欢问的Java集合类面试题

java.util包中包含了一系列重要的集合类,而对于集合类,主要需要掌握的就是它的内部结构,以及遍历集合的迭代模式。接口:CollectionCollection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素(Elements)。一些Collect...

2015-07-08 11:01:48

阅读数:335

评论数:0

java细节总结

1、抽象类可以被多个子类继承,但每个子类之恩那个继承一个抽象类。 2、java提供了一个系统级的线程,即垃圾回收器线程。用来对每一个分配出去的内存空间进行跟踪。当JVM空闲时,自动回收每块可能被回收的内存,GC是完全自动的,不能被强制执行。程序员最多只能用System.gc()来建议执行垃圾回收器...

2015-07-07 15:53:49

阅读数:402

评论数:0

java深入解析-第4章 方法、构造器与变量

1、作为应用程序入口的main方法,需要将其生命为public、static、void,并且参数为String类型的数组或可变参数。在程序启动时,由Java虚拟机调用。 2、main方法在表现行为上,与其他方法基本相同,可以重载、由其他方法调用、继承、隐藏,也可以抛出异常,带有类型参数。 3、...

2015-07-07 15:19:36

阅读数:243

评论数:0

java深入解析-第3章 String类

1、如果是在循环中对String对象进行连接,应该直接使用StringBuilder代替String的”+”连接,这样可以提高性能。 2、对于编译时常量,在编译后直接计算出字符串的值,而不会再运行时创建临时的StringBuilder对象来完成字符串连接。 3、String对象是不可变的。因为...

2015-07-07 14:29:30

阅读数:231

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭