- 博客(14)
- 资源 (22)
- 收藏
- 关注
原创 ThreadLocal原理分析
ThreadLocal是什么?ThreadLocal就是指线程局部变量,就是指多个线程并发运行的时候,使用ThreadLocal装饰的变量在每个线程里都是单独使用的。好处由于每个线程拥有了自己的变量,所以消除了多线程情况下的竞争关系。实现原理要理解ThreadLocal的实现原理,那还是得从源码出发 public void set(T value) { Thread t = T
2017-09-14 22:10:18
317
原创 java线程的join分析
要分析join方法原理,最简单直接的方式就是查看Thread源码,其中join() 方法的注释写到:Waits for this thread to die.(就是一直等到线程结束)。由此可知join()方法具备的功能有: - 线程start()之后才起作用 - 线程结束才退出 - 阻塞调用的线程为了能更深入理解,以下是源码片段:/** * Waits for this thread
2017-09-13 22:35:48
303
原创 java 注解原理分析
最近在看java的注解的源码,要了解注解的运行原理,需要查阅rt.jar 的 java.lang.annotation、sun.reflect.annotation 这两个package的源码,还有了解java的proxy机制。所有的注解都是继承于 Annotation 接口的,但 @interface 定义的类又没有具体的实现,所以可以推测jvm在实际运行的时候,应该会给@inter
2017-09-09 12:38:27
558
原创 java进阶建议阅读的书籍
现在很多人出来做了两三年的java后端开发,然后就遇到一些个人技术发展的瓶颈,功能会开发,但很多基础知识不够扎实,很多会用但却不懂得原理,为了能朝着技术方向更好的发展,建议各位除了多阅读开源源码,还要多看书。1、首先建议大家看的是《Java虚拟机》,这样可以深入jvm的工作原理,内存分配,垃圾回收,如何调优,如何分析线上问题等等;2、然后再看《JAVA并发编程实践》,对多线程,高并发的开发
2017-09-07 20:54:00
439
原创 java学习思维导图
一直想着将自己积累的知识分享出去,这段时间由于公司的项目基本稳定,新项目的产品需求还没完全确定下来,所以就趁着这段时间看看jdk的源码,整理一下java的知识点,以便有需要的人学习。不过如果想对java更深入的学习,个人建议多看源码。 这次主要整理的有: 1、java比较常用的集合; 2、线程; 3、jvm原理(类加载机制,垃圾回收机制等) 4、IO/NIO比较常用的类; 5、设计模式,算法等;
2017-09-06 21:53:34
1268
1
原创 【开篇】心态、责任比技术能力更重要
转眼间已经工作5年了,由于工作比较忙,一直没好好静下心来将自己的工作经历写下来分享,在分享工作历程之前,我得提一下,工作的过程中心态、责任永远比技术能力更重要,这个是我自职业生涯开始到现在的最大体会。我一毕业就进入了广东天悦网络这家创业公司,并成为了该公司的第一名员工,虽然坚持了4年的创业还是没能创业成功,但在该公司是我工作以来给我成长最大的,最磨练我的,在此还得感谢该公司的杨总和吴总。刚
2015-10-26 21:39:28
586
原创 Java 设计模式 动态调用 JavaBean 的 setter 和 getter
/*** 这个是接口类*/import java.lang.reflect.Field;import java.lang.reflect.Method;import java.util.List;/*** * Title:* * * * Description:* * * * Copyright (c) 2008* * * * Company:* * * * Created Time:20
2008-09-13 12:18:00
1118
原创 对JAVA语言的十个常见误解
程序员锦囊:对JAVA语言的十个常见误解JAVA语言自从应用于Internet,迅速成为全球热点。它的平台无关性仿佛成为解决互易操作性和可移植性的灵丹妙药。然而对于JAVA语言的认识仍有不少误解。 1.JAVA是HTML的扩充,JAVA是一个编程语言,HTML是一个页面描述语言。除了新版本HTML可以在WEB页中插入JA-VA小应用外,它们之间没有任何相同之处。 2.JAVA是一种很容易学会的
2008-05-31 01:14:00
396
原创 对JAVA语言的十个常见误解
程序员锦囊:对JAVA语言的十个常见误解JAVA语言自从应用于Internet,迅速成为全球热点。它的平台无关性仿佛成为解决互易操作性和可移植性的灵丹妙药。然而对于JAVA语言的认识仍有不少误解。 1.JAVA是HTML的扩充,JAVA是一个编程语言,HTML是一个页面描述语言。除了新版本HTML可以在WEB页中插入JA-VA小应用外,它们之间没有任何相同之处。 2.JAVA是一种很容易学会的
2008-05-31 01:13:00
347
原创 java 程序习惯
如果 t1 和 t2 是指针变量,那么允许执行赋值语句 t2=t1.如果 t1 为 null,那么该赋值语句使得 t2 为 null。如果 t1 不是 null,赋值语句改变 t2 ,让它指向 t1 所指向的对象。这时,改变 t1 或 t2 都能改变它们指向的对象。 Clones 有时需要复制现有的对象,该副本必须与现有对象一样,但完全独立。该副本不会对以前产生影响。测试对象是否相等 可以使
2008-05-31 01:09:00
326
原创 JScrollPane的JTextArea在JTextArea.append()时自动滚动到最末行
// 设置自动滚动,当改变显示框的属性就将滚动条滚动到最低 //我实现的方式是在 JTextArea 的属性改变的时候就滚动jTextArea1.addPropertyChangeListener(new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent evt) { jTe
2008-05-24 15:02:00
827
原创 生成可双击运行的Jar文件
1. 在*.mft或*.mf文件中输入如下的内容: main-class: Hello 注意: (1) 冒号后有一空格; (2) Hello是启动运行类Hello.class的文件名; (3) Hello 后有一个回车符, 一定不能少; (4) *.mf 是标明文件;(包含来自标明文件的标明信息) 2. Jar 命令的使用 例如: (1) jar cvfm abc.jar run.mf *
2007-12-29 20:35:00
420
ehcache-2.8.4-distribution.tar.gz
2014-09-30
高仿微信源码
2014-02-23
基于 Java 实现的队列和堆栈
2008-06-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人