![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 92
yaowj2
这个作者很懒,什么都没留下…
展开
-
ThreadPoolExecutor运转机制
最近发现几起对ThreadPoolExecutor的误用,其中包括自己,发现都是因为没有仔细看注释和内部运转机制,想当然的揣测参数导致,先看一下新建一个ThreadPoolExecutor的构建参数:public ThreadPoolExecutor(int corePoolSize, int maximumPo转载 2011-12-01 15:03:14 · 984 阅读 · 0 评论 -
AOP的实现机制
转自:http://www.iteye.com/topic/1116696Java综合 附件中有本文的源代码和Pdf版。本文写的很长的原因,是不希望大家学习AOP时到处找资料,大家有时间可以按照本文动手实践下,相信会有非常大的收获的,有什么问题互相交流,有问必答!1 AOP各种的实现AOP就是面向切面编程,我们可以从几个层面来实现AOP。在编译器修改源代码转载 2013-10-12 14:04:26 · 1067 阅读 · 0 评论 -
得用java agent instrument动态修改或替换相关
参考:(1)利用ClassFileTransformer实现aop:http://xj84.iteye.com/blog/1221105(2)java通过修改类的字节码实现aop功能:http://www.360doc.com/content/07/0518/11/25392_506401.shtml(3)java.lang.instrument动态修改替换类代码:http://z原创 2013-10-12 15:14:08 · 1295 阅读 · 0 评论 -
为什么匿名内部类参数必须为final类型
转自:http://www.189works.com/article-97599-1.html摘要: 1) 从程序设计语言的理论上:局部内部类(即:定义在方法中的内部类),由于本身就是在方法内部(可出现在形式参数定义处或者方法体处),因而访问方法中的局部变量(形式参数或局部变量)是天经地义的.是很自然的2) 为什么JAV ...转载 2013-10-18 13:45:23 · 705 阅读 · 0 评论 -
观察者模式与Guava EventBus
转自http://www.cnblogs.com/zemliu/archive/2013/09/11/3313782.html观察者模式结构图 代码实现public abstract class Subject { private List observerList = new ArrayList(); /**转载 2014-01-20 12:06:59 · 1503 阅读 · 0 评论 -
jstack 线程状态
转自 http://www.cnblogs.com/nexiyi/p/java_thread_jstack.htmljstack 线程状态jstack 线程里,值得关注的线程状态有:死锁,Deadlock(重点关注) 执行中,Runnable 等待资源,Waiting on condition(重点关注) 等待获取监视器,Waiting转载 2015-09-25 17:19:10 · 8182 阅读 · 0 评论 -
Java常见内存溢出异常分析(OutOfMemoryError)
转自:http://my.oschina.net/sunchp/blog/3694121.背景知识1).JVM体系结构2).JVM运行时数据区JVM内存结构的相关可以参考:http://my.oschina.net/sunchp/blog/3697072.堆溢出(OutOfMemoryError:java heap s转载 2015-12-09 14:57:32 · 3588 阅读 · 0 评论 -
JVM调优总结 -Xms -Xmx -Xmn -Xss
转自:http://unixboy.iteye.com/blog/174173堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,转载 2015-12-09 15:05:04 · 671 阅读 · 0 评论 -
JVM最多能创建多少个线程: unable to create new native thread
转载自:http://www.rigongyizu.com/jvm-max-threads/有应用报出这样的异常“java.lang.OutOfMemoryError: unable to create new native thread”。甚至机器上执行shell命令也会报”-bash: fork: Resource temporarily unavailable”异常。转载 2015-12-09 14:01:42 · 10330 阅读 · 1 评论 -
java反射机制应用场景
转自:http://gcq04552015.iteye.com/blog/1497531java反射机制应用场景博客分类: java 反射机制实现: 1)导出文件(1-4) 2)结果集在页面的显示(在运行时构造任意一个类的对象):显示哪些列, 操作按钮权限的显示(在类中定义一个显示权限的属性真或假,在得到的结果集后调用反射机制和权限控制-得到真或假,转载 2013-01-12 17:26:43 · 12340 阅读 · 0 评论 -
Log4j详细讲解
Log4j的类图:Logger - 日志写出器,供程序员输出日志信息Appender - 日志目的地,把格式化好的日志信息输出到指定的地方去ConsoleAppender - 目的地为控制台的AppenderFileAppender - 目的地为文件的AppenderRollingFileAppender - 目的地为大小受限的文件的AppenderLayout - 日志格转载 2012-02-22 20:21:26 · 712 阅读 · 0 评论 -
java 泛型
泛型概念:class,定义了该泛型的形式,在该class里面可以使用K和V做一些事情。如map中实例化时所指定的new HashMap,一般地:K表示键,V表示值,T表示泛型,E表示异常,?表示通配。另外讲述两个概念:泛型上限: ?extends T 其中T最大泛型类型,则实例化时使用的泛型必须是最大泛型类型或其子类型泛型下限: ? super T 其中T符号为类型添加原创 2011-12-07 10:24:09 · 528 阅读 · 0 评论 -
eclipse 快捷键
常用到的: Eclipse hottest short cuts0. ctrl + shift + G : look for reference for some method1. ctrl+shift+r:open sources2. ctrl+o: outline 3. ctrl+e: editor transfer 4. ctrl+2,L:value loca转载 2011-12-08 13:26:08 · 1205 阅读 · 0 评论 -
comparable与Comparator
Comparable 和Comparator 都是用来实现集合中的排序的,只是Comparable是在集合内部定义的方法实现的排序,Comparator是在集合外部实现的排序,所以,如想实现排序,就需要在集合外定义Comparator接口的方法compare()或在集合内实现Comparable接口的方法compareTo()。 Comparable是一个对象本身就已经支持自比较所需要实现的接口(原创 2011-12-12 11:32:10 · 624 阅读 · 0 评论 -
jvm 内存查看与分析工具
转自http://jameswxx.iteye.com/blog/731763 业界有很多强大的java profile的工具,比如Jporfiler,yourkit,这些收费的东西我就不想说了,想说的是,其实java自己就提供了很多内存监控的小工具,下面列举的工具只是一小部分,仔细研究下jdk的工具,还是蛮有意思的呢:) 1:gc日志输出转载 2011-12-28 09:37:03 · 34676 阅读 · 1 评论 -
Java实例对象占用内存
最近对程序占用内存方面做了一些优化,取得了不错的效果,总结了一些经验。 简要说一下,相信会对大家写出优质的程序有所帮助。 下面的论述针对32位系统,对64位系统不适用,后叙经常你写了一个程序,一测试,功能没问题,一看内存占用也不多,就不去考虑其它的东西了。但可能程序使用了一个什么数据结构,会当数据规模变大时,内存占用激增。 基本&&关键的问题是,Java里各种东东占多转载 2012-02-03 13:26:52 · 776 阅读 · 0 评论 -
利用Eclipse对MAT进行分析解决JAVA内存问题
转载自http://www.233.com/Java/jichu/20100822/100209217.html【赛迪网报道】对于JAVA内存的问题程序开发者们一直存在着困惑,应该如何合理的去将其妥善的解决,那么今天就给大家介绍一个利用Eclipse对MAT进行分析的解决办法与大家分享!首页http://www.eclipse.org/mat/插件更新地址h转载 2012-02-03 16:56:21 · 697 阅读 · 0 评论 -
分布式事务-两阶段提交协议
转载自:http://blog.csdn.net/xhh198781/article/details/6745059实现分布式事务的关键就是两阶段提交协议。在此协议中,一个或多个资源管理器的活动均由一个称为事务协调器的单独软件组件来控制。此协议中的五个步骤如下:•应用程序调用事务协调器中的提交方法。•事务协调器转载 2012-02-03 16:25:17 · 2175 阅读 · 0 评论 -
java 常用命令及参数
java:Usage: java [-options] class [args...] (to execute a class) or java -jar [-options] jarfile [args...] (to execute a jar file) where options include: -client to select the "clien原创 2012-01-05 22:11:55 · 720 阅读 · 0 评论 -
关于java.lang.IncompatibleClassChangeError: Implementing class错误解决
在尝试elastic-job 分布式任务时,跑example代码,任务正常启动。把example迁移到我们自己的应用后,发现无法启动,报错如下:Exception in thread "main" java.lang.IncompatibleClassChangeError: Implementing class at java.lang.ClassLoader.defineClass1(N原创 2015-11-26 18:40:35 · 45077 阅读 · 1 评论