
J2SE
文章平均质量分 61
cdjason
这个作者很懒,什么都没留下…
展开
-
单例模式的几种写法(包含双检锁写法)
饿汉式单例类public class Singleton{ private Singleton(){ } private static Singleton instance = new Singleton(); private static Singleton getInstance(){ return instance; }} 饿汉式提前实...原创 2009-10-30 04:45:55 · 212 阅读 · 0 评论 -
常见的异常(Java和Mysql)
最近在启动项目的时时候,遇到够这样一个问题。找了很久发现是由于端口没有开启的原因导致的。需要开启端口就好了。 Exception in thread "main" java.net.SocketException: Permission denied at sun.nio.ch.Net.bind(Native Method) at sun.n...原创 2013-08-21 17:10:24 · 347 阅读 · 0 评论 -
jmap -histo pid 输出的[C [B [I [S methodKlass constantPoolKlass含义
Heap HistogramAll Classes (excluding platform)ClassInstance CountTotal Sizeclass [I1029574101376class [B3748420206389class [C770319857592class [Ljava.lang.Ob...原创 2014-12-19 14:58:55 · 365 阅读 · 0 评论 -
继承,抽象类,初始化属性执行顺序问题
先看代码 package com.digisky.ex;/** * 父类 * * @author Jason Yang * @version 1.0 2014-8-4下午10:18:13 */public abstract class F { public F() { setName("父类"); setId(1); }...原创 2014-08-04 22:32:42 · 570 阅读 · 0 评论 -
Java 性能监控
转自:http://www.ibm.com/search/csass/search/?q=java+性能监控&dws=cndw&ibm-search.x=0&ibm-search.y=0&ibm-search=Search&sn=dw&lang=zh&cc=CN&ddr=&en=utf&lo=zh&hpp=2...原创 2014-08-06 00:05:31 · 189 阅读 · 1 评论 -
java annotation详解
如果要对于元数据的作用进行分类,目前还没有明确的定义,不过我们可以根据它所起的作用,大致可分为三类:l 编写文档:通过代码里标识的元数据生成文档。l 代码分析:通过代码里标识的元数据对代码进行分析。l 编译检查:通过代码里标识的元数据让编译器能实现基本的编译检查。 基本内置注释 @Override注释能实现编译时检查...原创 2013-10-06 17:23:43 · 102 阅读 · 0 评论 -
native2ascii国际化properties文件,中文字符与Unicode字符相互转换
国际化*.properties文件,中文字符与Unicode字符相互转换native2ascii.exe 是Java的一个文件转码工具,是将特殊各异的内容转为用指定的编码标准文体形式统一的表现出来,它通常位于JDK_home\bin目录下,安装好Java SE后,可在命令行直接使用 native2ascii命令进行转码。国际化resources.properties文件,中文字符转换...原创 2015-03-04 20:32:45 · 418 阅读 · 0 评论 -
GC学习笔记
http://blog.youkuaiyun.com/fenglibing/article/details/6321453原创 2015-04-03 16:35:54 · 121 阅读 · 0 评论 -
后端系统性能优化经验总结
一、关于性能优化 性能优化这个词其实还是蛮火的,很多时候都会听很多人说过需要对系统进行优化,恰好自己经历过一个系统的优化周期,还算是有点小小的心得。 为什么要优化系统性能,这个问题大家都心知肚明的。对于公司而言,如果一台机器可以做以前两台机器的活,老板能不高兴嘛,公司成本降低了; 对于程序猿而言,性能优化应该是展现价值的所在,在优化的过程中更能提升自己的...原创 2014-04-18 11:27:08 · 1239 阅读 · 0 评论 -
线程数究竟设多少合理
一、需求缘起Web-Server通常有个配置,最大工作线程数,后端服务一般也有个配置,工作线程池的线程数量,这个线程数的配置不同的业务架构师有不同的经验值,有些业务设置为CPU核数的2倍,有些业务设置为CPU核数的8倍,有些业务设置为CPU核数的32倍。“工作线程数”的设置依据是什么,到底设置为多少能够最大化CPU性能,是本文要讨论的问题。 二、一些共性认知在进行进一步深...原创 2016-04-14 19:59:29 · 223 阅读 · 0 评论 -
深入探索 Java 热部署
在 Java 开发领域,热部署一直是一个难以解决的问题,目前的 Java 虚拟机只能实现方法体的修改热部署,对于整个类的结构修改,仍然需要重启虚拟机,对类重新加载才能完成更新操作。本文将探索如何在不破坏 Java 虚拟机现有行为的前提下,实现某个单一类的热部署,让系统无需重启就完成某个类的更新。简介在 Java 开发领域,热部署一直是一个难以解决的问题,目前的 Java 虚拟机只能实现方...原创 2016-06-28 11:23:09 · 133 阅读 · 0 评论 -
java虚拟机jvm垃圾收集基础(垃圾回收基础知识)
java 语言的一大特点就是可以进行自动垃圾回收处理,而无需开发人员过于关注系统资源,例如内存资源的释放情况。自动垃圾收集虽然大大减轻了开发人员的工作量,但是也增加了软件系统的负担。拥有垃圾收集器可以说是 Java 语言与 C++语言的一项显著区别。在 C++语言中,程序员必须小心谨慎地处理每一项内存分配,且内存使用完后必须手工释放曾经占用的内存空间。当内存释放不够完全时,即存在分配但永不...原创 2015-09-12 20:07:39 · 121 阅读 · 0 评论 -
Java应用调优指南之-工具篇
转自:http://calvin1978.blogcn.com/articles/perf-tunning-2.html?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io Java应用的调优,再不写都要忘光了,先对付着写完,免费的JMC真的好用,大家越早用上越好。前一篇是三个月前的 另一份Java应...原创 2016-10-23 11:18:24 · 185 阅读 · 0 评论 -
接口与抽象类
考察点:抽象类和接口相同点:都不能被实例化,位于继承树的顶端,都包含抽象方法不同点:1、设计目的:接口体现的一种规范,类似与整个系统的总纲,制订了系统各模块应该遵循的标准,因此接口不应该经常改变,一旦改变对整个系统是辐射性的。 抽象类作为多个子类的共同父类,体现的是一种模板式设计,可以当作系统实现过程中的中间产品,已经实现了系统部分功能。 ...原创 2016-11-05 16:41:04 · 130 阅读 · 0 评论 -
详解equals和hashCode
前言在程序设计中,有很多的“公约”,遵守约定去实现你的代码,会让你避开很多坑,这些公约是前人总结出来的设计规范。 Object类是Java中的万类之祖,其中,equals和hashCode是2个非常重要的方法。 这2个方法总是被人放在一起讨论。最近在看集合框架,为了打基础,就决定把一些细枝末节清理掉。一次性搞清楚! 下面开始剖析。 public boolean...原创 2017-04-02 01:13:07 · 146 阅读 · 0 评论 -
网页游戏webgame手游手机游戏研发开发技术选取
在这里,我只限于讨论轻游戏的研发相关内容。原因有 1、我本人比较熟悉的只有webgame,手游和SNS游戏研发的的开发各项流程2、我本人对于大型的客户端的游戏,不熟悉,所以也不知从何谈起3、这里只是个人的总结和思路的记录,欢迎大家吐槽和拍砖...相互讨论。 一、短连接与长连接的选择 二、用数据库还是用NOSQL 三、用JDBC直接连接还是用ORM框架 ...原创 2013-08-21 16:46:14 · 336 阅读 · 0 评论 -
随机 打乱 数组 List 洗牌算法 shuffle
在游戏研发过程中,多少会遇到这样的需求, 在一堆数据中随机打乱后再分配出去。这个是比较典型的洗牌算法,在Java中提供了这样的API:Collections.shuffle(),C++中也提供了std::random_shuffle,都可以随机的打乱一个List。现在对一个数组进行随机打乱。参考了Java中Collections.shffle()。 package com.xd100;...原创 2013-08-19 17:47:04 · 819 阅读 · 0 评论 -
八大排序算法总结
插入排序1.直接插入排序原理:将数组分为无序区和有序区两个区,然后不断将无序区的第一个元素按大小顺序插入到有序区中去,最终将所有无序区元素都移动到有序区完成排序。要点:设立哨兵,作为临时存储和判断数组边界之用。实现:Void InsertSort(Node L[],int length){Int i,j;//分别为有序区和无序区指针for(i=1;i<...原创 2009-10-30 23:00:31 · 95 阅读 · 0 评论 -
J2SE内容出现在面试笔试中的总结一
JAVA相关基础知识 1、面向对象的特征有哪些方面 1抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。对象的一个新类可以从现有...2009-11-12 18:54:34 · 91 阅读 · 0 评论 -
线程在Java笔试面试中常被问及的内容
1、sleep() 和 wait() 有什么区别? sleep是线程类(Thread)的方法,导致此线程暂停执行指定时间,给执行机会给其他线程,但是监控状态依然保持,到时后会自动恢复。调用sleep不会释放对象锁。wait是Object类的方法,对此对象调用wait方法导致本线程放弃对象锁,进入等待此对象的等待锁定池,只有针对此对象发出notify方法(或notifyAll)后本线程才进入对象...2009-11-12 19:10:40 · 148 阅读 · 0 评论 -
String、StringBuffer和StringBuilder区别
相信大家对 String 和 StringBuffer 的区别也已经很了解了,但是估计还是会有很多同志对这两个类的工作原理有些不清楚的地方,今天我在这里重新把这个概念给大家复习一下,顺便牵出 J2SE 5.0 里面带来的一个新的字符操作的类—— StringBuilder (先别忙着扔我砖头,我还算清醒,我这里说的不是 C #, Java 也有 StringBuilder 类)。那么这个 Stri...原创 2009-06-24 10:53:05 · 87 阅读 · 0 评论 -
加密方式的选择
先简单的介绍一下常用的加密方式 1.1. 单钥密码体制单钥密码体制是一种传统的加密算法,是指信息的发送方和接收方共同使用同一把密钥进行加解密。通常,使用的加密算法比较简便高效,密钥简短,加解密速度快,破译极其困难。但是加密的安全性依靠密钥保管的安全性,在公开的计算机网络上安全地传送和保管密钥是一个严峻的问题,并且如果在多用户的情况下密钥的保管安全性也是一个问题。单钥密码体制的代...2009-08-27 17:30:54 · 248 阅读 · 0 评论 -
Java读取文件内容到byte[]数组中
有时候,我们需要将读取文件的内容到一个byte[] 数组中,然后对这个数组进行一些修改,这时,我们可以借助于 ByteArrayOutputStream 这个类来实现。ByteArrayOutputStream,顾名思义,同样是一个OutputStream,那么,对于它的写入操作,和其他的OutputStream应该是没有什么两样,写入代码可以说是随手拈来的,与其他输出流的不同之处在于,Byt...2009-09-06 23:27:26 · 1479 阅读 · 0 评论 -
Java中serialVersionUID的解释
serialVersionUID作用: 序列化时为了保持版本的兼容性,即在版本升级时反序列化仍保持对象的唯一性。 有两种生成方式: 一个是默认的1L,比如:private static final long serialVersionUID = 1L; 一个是根据类名、接口名、成员方法及属性等来生成一个64位的哈希字段,比如: private static final...原创 2010-02-05 10:19:40 · 124 阅读 · 0 评论 -
循环遍历Map的几种方式
已有的数据:Map<String,String> map=new HashMap<String,String>(); map.put("username", "qq"); map.put("passWord", "123"); map.put("userID", "1"); map.put(原创 2010-02-21 12:30:39 · 386 阅读 · 0 评论 -
java动态替换代理ip
工作需要要写一个spider访问XXX网站,但是由于我访问频率很高经常被XX网站封IP(我知道这是不道德的,但是没办法)。为了突破IP限制需要动态替换代理ip。代码如下:[code="java"]import java.io.BufferedInputStream;import java.io.IOException;import java.net.URL;impo...原创 2010-10-28 11:07:00 · 1460 阅读 · 0 评论 -
浅谈Java的输入输出流
Java语言的输入输出功能是十分强大而灵活的,美中不足的是看上去输入输出的代码并不是很简洁,因为你往往需要包装许多不同的对象。在Java类库中,IO部分的内容是很庞大的,因为它涉及的领域很广泛:标准输入输出,文件的操作,网络上的数据流,字符串流,对象流,zip文件流....本文的目的是为大家做一个简要的介绍。 流是一个很形象的概念,当程序需要读取数据的时候,就会开启一个通向数据源的流,...原创 2010-11-17 12:12:10 · 80 阅读 · 0 评论 -
Mina2.0框架源码剖析(一)
摘自网络:整个框架最核心的几个包是:org.apache.mina.core.service, org.apache.mina.core.session, org.apache.mina.core.polling以及org.apache.mina.transport.socket。 这一篇先来看org.apache.mina.core.service。第一个要说的接口是I...原创 2010-11-26 21:55:32 · 85 阅读 · 0 评论 -
深入分析 Java 中的中文编码问题
简介: 编码问题一直困扰着开发人员,尤其在 Java 中更加明显,因为 Java 是跨平台语言,不同平台之间编码之间的切换较多。本文将向你详细介绍 Java 中编码问题出现的根本原因,你将了解到:Java 中经常遇到的几种编码格式的区别;Java 中经常需要编码的场景;出现中文问题的原因分析;在开发 Java web 程序时可能会存在编码的几个地方,一个 HTTP 请求怎么控制编码格式?如何避...原创 2011-10-14 17:43:45 · 78 阅读 · 0 评论 -
Java多播通讯框架 JGroups
JGroups 适合使用场合服务器集群cluster、多服务器通讯、服务器replication(复制)等,分布式cache缓存JGroups 简介JGroups是一个基于Java语言的提供可靠多播(组播)的开发工具包。在IP Multicast基础上提供可靠服务,也可以构建在TCP或者WAN上。主要是由Bela Ban开发,属于JBoss.org,在JBoss的网站也有一些相关文档。目前在...原创 2012-03-27 18:27:47 · 232 阅读 · 0 评论 -
Java String类型浅谈
一、String大小。此处大小指字符串占用的内存字节数。按照官方解释,Java的字符大小是按照16位的Unicode来保存。因此字符串"冷lengxuegang"在内存中占据24个字节。 二、toCharArray()方法。该方法返回字符串中所有的字符,此时汉字和字母一样,作为一个字符看待。例如:System.out.println("冷lengxuegang".toCharArra...原创 2013-07-19 17:18:28 · 91 阅读 · 0 评论 -
网络传输时,Java中byte[]转String问题
http://blog.youkuaiyun.com/qq_35440678/article/details/65444505 最近的项目中要使用到把byte[]类型转换成String字符串然后通过网络发送,但发现发现出去的字符串和获取的字符串虽然是一样的,但当用String的getBytes()的方法得到的byte[]跟原来的byte[]是不一样的。看如下代码: bytebyt...原创 2018-01-21 12:13:25 · 2044 阅读 · 1 评论