![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java
文章平均质量分 83
学仙只为看看天
这个作者很懒,什么都没留下…
展开
-
Java中类的初始化顺序总结
前几天笔试时候经常遇到和Java类装载以及初始化相关的问题,虽然这部分内容在《thinking in java》上已经很详细说明,但是感觉自己还是有些误区,所以自己写了个小程序试验,然后总结了一下。 初始化顺序为: 加载一个包含main方法的类: 初始化父类的静态块,静态变量--->初始化子类的静态块,静态变量(静态块与静态变量优先级相等) ---->执原创 2012-06-04 19:22:18 · 534 阅读 · 0 评论 -
多线程读书笔记二(java内存模型、volatile变量、内存模型与synchronized、CAS)
java内存模型java中,线程之间的通信是通过共享内存的方式,存储在堆中的实例域,静态域以及数组元素都可以在线程间通信。java内存模型控制一个线程对共享变量的改变何时对另一个线程可见。线程间的共享变量存在主内存中,而对于每一个线程,都有一个私有的工作内存。工作内存是个虚拟的概念,涵盖了缓存,写缓冲区,寄存器以及其他的硬件和编译器优化,总之就是指线程的本地内存。存在线程本地内存中的变量值原创 2014-03-16 22:52:05 · 4081 阅读 · 0 评论 -
多线程读书笔记一(内部锁,过期数据,非原子的64位操作,线程封闭)
关于内部锁synchronized关键字在多线程中,是一种“锁”的机制,它是一种内部锁。内部锁是可重进入的,所谓可重进入,就是指请求是基于每线程,而不是每调用。synchronized锁是加在对象上的,但是如果同一线程,多次请求这个锁,是可以的,如:public class ReentrancySynTest { public synchronized void a() {原创 2014-03-14 20:53:32 · 874 阅读 · 0 评论 -
关于java中的protected访问权限
1. protected 访问控制符能被用于方法和成员变量。 2. 声明为protected的方法和成员变量能被同一个包里的所有类所访问,就像默认修饰符package一样。 3. 能被该类的子类所访问,子类可以和父类不在一个包中。 这样,当你想让一个类中的某个方法或成员变量在包中都可见,而且其子类也能访问(子类有可能和父类不在同一个包中)但又不想让所有类都可以访转载 2014-02-23 13:36:02 · 11056 阅读 · 0 评论 -
Java 继承机制
1 继承的概念 如果类 B 具有类 A 的全部属性和方法,而且又具有自己特有的某些属性和方法,则把类 A 称作一般类,把类 B 称作特殊类。 在面向对象程序设计中运用继承原则,就是在每个由一般类和特殊类形成的一般 - 特殊结构中,把一般类的对象实例和所有特殊类的对象实例都共同具有的属性和操作一次性地在一般类中进行显式的定义,在特殊类中不再重复地定义一般类中已经定义的东西,但是在转载 2014-02-23 13:20:24 · 1704 阅读 · 0 评论 -
Iterator 循环 List remove元素报错的解决办法
原文链接:http://www.2cto.com/kf/201301/184791.htmlList list = new ArrayList(); list.add(1); list.add(2); list.add(3); list.add(4); list.add(5); list.add(6); for (Iterator iter =转载 2013-07-18 15:04:28 · 2338 阅读 · 0 评论 -
理解java垃圾回收器
今天百度一面,面试官刚开始就说谈一谈java里的垃圾回收器。网上关于java垃圾回收机制的文章实在是太多,但是以前看那些文章都是随便了解大概,并给有深入考虑,所以一旦时隔较长时间,就会对其中的一些具体的原理生疏。所以,在这里还是亲自整理下关于常用垃圾回收机制以及java垃圾回收器的工作原理。引用计数法:这种垃圾回收的方法比较简单,但也是一种速度很慢的垃圾回收技术。它的工作原理如下:1.原创 2013-10-11 16:58:56 · 2104 阅读 · 1 评论 -
Java序列化与反序列化(实践)
原文链接:http://renyongjie668.blog.163.com/blog/static/1600531201022105142865/基本概念:序列化是将对象状态转换为可保持或传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据。昨天在一本书上看到了,好好实践了一下,序列化为一般文件,也序列化为XML文件(使用转载 2013-09-30 13:42:51 · 559 阅读 · 0 评论 -
java java.util.ConcurrentModificationException 原因
原文链接:http://blog.csdn.net/traceofsun/article/details/5820925用iterator遍历集合时要注意的地方:不可以对iterator相关的地方做添加或删除操作。下面用List为例来说明为什么会报 ConcurrentModificationException 这个异常,其它集合类似可以自己思考。 public st转载 2013-04-19 10:44:56 · 622 阅读 · 0 评论 -
java异常处理总结
一篇很好的关于异常处理的文章:http://www.blogjava.net/freeman1984/archive/2007/09/27/148850.html 收藏到这里供以后参考另外一些个人心得:1.抛出异常后(throw异常),当前的执行路径被中止,后面的代码(除此try,catch对应的finally中的)就不会执行下去了2.如果异常没有被抛出的话,那么try,catc转载 2013-01-21 10:41:37 · 342 阅读 · 0 评论 -
深入理解java继承——java继承中容易犯的错误
java的继承问题是笔试面试中常考的热点之一,请看下面几个例子,并加以比较: 在看例子之前,首先关于继承有以下几个原则: (1)子类继承了其父类中不是私有的成员变量和成员方法,作为自己的成员变量和方法 (2)子类中定义的成员变量和父类中定义的成员变量相同时,则父类中的成员变量被隐藏 (3)子类中定义的成员方法,并且这个成员方法的名字原创 2012-06-21 12:17:00 · 7051 阅读 · 1 评论 -
Java中静态变量与静态方法的继承
今天在看单例模式时,《head first 设计模式》中提到了单例类的继承问题。因为单例类中的变量及构造单例的方法通常都是静态的,所以这里涉及到“静态方法与变量的继承”。以前一直没关注这些,所以今天特地写了些小程序测试下,顺便做些总结。 首先,定义一个类A如下class A { static int a = 1; static int b = 2;原创 2012-06-16 21:29:24 · 13890 阅读 · 5 评论 -
HDU ACM 1005 java版
原题链接: http://acm.hdu.edu.cn/showproblem.php?pid=1005Problem DescriptionA number sequence is defined as follows:f(1) = 1, f(2) = 1, f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7.Given A,原创 2014-03-19 16:05:57 · 4243 阅读 · 1 评论