java基础
spendingAllMyTime
love u forerver
展开
-
java实现策略模式
适用场景:一个业务有多个实现场景,3个以上的算法。好处:解耦和,代码层次清晰,符合面向对象的特点缺点:客户端代码类需要知道所有的策略,才能知道调用哪个类集成关系:各个策略实现一个接口(IParseStrategy),在一个环境类(ContextClass)里包含策略接口的引用,环境类通过包含构造函数或者set方法把需要的策略赋给接口引用,再包含一个对客户端暴漏的方法,这个方法里通过原创 2015-07-05 09:40:02 · 359 阅读 · 0 评论 -
java内部类的使用场景
java内部类的分类:有成员内部类,局部内部类,静态内部类,匿名内部类内部类可以继承外部类的父类,这为有些场景的实现提供了方法,因为java只能单继承。内部类的一个作用是:匿名内部类:这个描述很简单易懂http://www.cnblogs.com/nerxious/archive/2013/01/25/2876489.html待不上:转载 2015-05-15 22:56:30 · 350 阅读 · 0 评论 -
Java 实现单链表翻转代码
package lianbiao;//测试用例1 head=null 2 head为单节点 3 多节点public class SingnalLinkedReverse { public static Node reverse(Node head) { //头节点为null的情况 if(head==null){ retur原创 2015-03-28 10:47:13 · 362 阅读 · 0 评论 -
java集合类源码阅读笔记
ArrayList底层就是一数组,添加删除元素,使用system.arraycocy方法,移位get时获取很快linkedlist底层是一链表原创 2015-03-25 20:29:44 · 318 阅读 · 0 评论 -
java的类加载机制
网上看了一篇介绍类加载机制的博文,介绍的跟清晰,记录下概要笔记1、类加载机制是干嘛用的2、有哪些类加载器3、这些类加载器是如何工作的4、如何实现自定义类加载器1、java文件要想运行,是要先编译成class文件,我们的java程序打好jar包,启动时会有一个入口类入口函数,在这个类中会引入一些别的class文件的方法,如何找到这一层一层关联的class文件加载到内存转载 2015-04-04 16:48:53 · 349 阅读 · 0 评论 -
servlet线程安全不安全
先把原文贴出来http://blog.csdn.net/lcore/article/details/8974590自己描述下读后感:结论:servlet是线程不安全的问什么咧,先看下定义,什么叫做线程安全?说白了,就是两个线程同时访问一个方法或变量,如果存在不一样的情况,就说明这个类是线程不安全的。什么情况会导致线程不安全呢?一个类的方法只有一个add() a+b;原创 2015-05-09 23:32:31 · 546 阅读 · 0 评论 -
hashmap源码分析
0hashmap的数据结构就是数据加链表1hashmap不适合高并发的应用场景原因是hashmap里的方法是非线程安全的,如果需要线程安全可以用concurrenthashmap,这个是线程安全的hashmap实现2如何使用hashmap提高性能,其中一个细节可以使用,就是根据自己的业务场景,在初始话hashmap的时候指定大小。原因是,hashmap有个比例因子0.75,原创 2015-03-17 13:44:26 · 344 阅读 · 0 评论 -
JVM垃圾回收之分代回收策略
JVM的垃圾回收策略有很多种,标记清除回收器,压缩回收器,分代回收器。比较常见的是sun公司实现的jvm的分代回收器。堆内存被分位三代:年轻代(young generation),终生代(Tenured generation)[老说法年老代(old generation)],永生代(perm generation)其中年轻代又分位eden区和两个survivor区(from su原创 2015-04-01 23:23:31 · 490 阅读 · 0 评论 -
JVM垃圾回收器的GC回收算法
垃圾回收器的种类串行回收器 一个线程回收,单核的情况下效率很高,年轻代并行回收器 多线程回收并发回收器 在工作的间隙回收,对程序来说看着像是没有停止分代回收策略已经说明了回收的时间点和策略,当具体要回收的时候,是回收那些没有引用对象。所以回收器要做的就是两件事,怎么找到没有引用的对象和找到之后采用什么算法回收。找对象有两个方法:1引用计数法,就是对每个对象保存一原创 2015-04-03 23:39:23 · 341 阅读 · 0 评论 -
Java类和静态变量的回收
先说下程序上线中碰到的一个问题:我们开发的程序之前是一个服务启动一个JVM现在是把不同的服务部署到了一个JVM里,不同的服务是会用到一个单例模式产生的读取redis数据库的类,那么问题来了,这个单例模式的类会不会回收,什么时候回收?答案我个人的理解是不会回收。先说下JVM底层的回收机制:静态变量是放在方法区的,放在方法去的还有类的属性方法信息。类的数据信息是放在原创 2015-02-03 22:59:58 · 6213 阅读 · 3 评论 -
jvm内存模型
java内存模型如图所示,其中方法区和堆是线程共享的程序计数器是一片很小的内存区域,用于指示字节码运行到第几行虚拟机栈存储局部变量表、操作站、动态链接、方法出口等,局部变量表中包含基本数据类型、对象的引用、返回地址等本地方法栈跟虚拟机栈用法类似,唯一的区别是本地方法栈用来执行native方法堆jvm内存模型中最重要的部分,堆的内存模型。用于存储对象的实例原创 2015-06-11 21:41:17 · 427 阅读 · 0 评论 -
java面试笔试题基础笔记1
看了别人的一篇博客,java笔试题的自己做个笔记,java基础笔试题,刚看到那篇博客还有但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接否则保留追究法律责任的权利吓尿,赶紧先把链接帖下:http://blog.csdn.net/lanxuezaipiao/article/details/167537431、String基础,结果是fa原创 2015-05-17 19:34:46 · 418 阅读 · 0 评论