随笔 - 2228  文章 - 4  评论 - 371  阅读 - 1109万

随笔分类 -  java

1 2 3 下一页
Java-Enumeration ( 枚举类)
摘要:Enumeration(枚举)接口的作用和Iterator类似,只提供了遍历Vector和Hashtable类型集合元素的功能,不支持元素的移除操作。 Java8中Enumeration接口的源码: package java.util; public interface Enumeration<E> 阅读全文
posted @ 2021-07-22 19:31 duanxz 阅读(1931) 评论(0) 推荐(0) 编辑
SPI的实现原理
摘要:前言: SPI是jdk内置的服务发现机制, 全称叫Service Provider Interface. SPI的工作原理, 就是ClassPath路径下的META-INF/services文件夹中, 以接口的全限定名来命名文件名, 文件里面写该接口的实现。 然后再资源加载的方式,读取文件的内容(接 阅读全文
posted @ 2021-07-22 17:20 duanxz 阅读(1622) 评论(0) 推荐(0) 编辑
OS信号实现Java异步通知
摘要:OS信号实现Java异步通知本文将结合操作系统的信号机制,来尝试实现一个简单的,不依赖功能环境的Java异步通知功能。没有特殊说明,本文所有的示例,都是基于Linux。信号简介信号是在软件层次上对中断机制的一种模拟,在原理上,一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。通俗来讲,信号 阅读全文
posted @ 2017-01-11 20:47 duanxz 阅读(870) 评论(0) 推荐(0) 编辑
http请求中java中的302和sendRedirect的区别
摘要:一、HTTP Get请求URL最大长度 各浏览器HTTP Get请求URL最大长度并不相同,几类常用浏览器最大长度及超过最大长度后提交情况如下: IE6.0 :url最大长度2083个字符,超过最大长度后无法提交。IE7.0 :url最大长度2083个字符,超过最大长度后仍然能提交,但是只能传过去2 阅读全文
posted @ 2016-04-29 10:45 duanxz 阅读(4740) 评论(0) 推荐(0) 编辑
Java链式方法 连贯接口(fluent interface)
摘要:有两种情况可运用链式方法: 第一种 除最后一个方法外,每个方法都返回一个对象 object2 = object1.method1(); object3 = object2.method2(); object3.method3(); 以上三行代码等价于如下链式方法 object1.method1(). 阅读全文
posted @ 2016-04-12 23:02 duanxz 阅读(1520) 评论(0) 推荐(0) 编辑
instanceof, isinstance,isAssignableFrom的区别
摘要://获得监听器集合,遍历监听器,可支持同步和异步的广播事件 instanceof运算符 只被用于对象引用变量,检查左边的被测试对象 是不是 右边类或接口的 实例化。如果被测对象是null值,则测试结果总是false。 形象地:自身实例或子类实例 instanceof 自身类 返回true 例: St 阅读全文
posted @ 2015-11-12 11:21 duanxz 阅读(429) 评论(0) 推荐(0) 编辑
Java的自动装箱与拆箱(Autoboxing and unboxing)
摘要:一、什么是自动装箱拆箱 很简单,下面两句代码就可以看到装箱和拆箱过程 //自动装箱 Integer total = 99; //自动拆箱 int totalprim = total; 简单一点说,装箱就是自动将基本数据类型转换为包装器类型;拆箱就是自动将包装器类型转换为基本数据类型。 下面我们来看看 阅读全文
posted @ 2015-10-15 09:32 duanxz 阅读(1372) 评论(0) 推荐(0) 编辑
RandomAcessFile、MappedByteBuffer和缓冲读/写文件
摘要:项目需要进行大文件的读写,调查测试的结果使我决定使用MappedByteBuffer及相关类进行文件的操作,效果不是一般的高。网上参考资源很多,如下两篇非常不错:1、花1K内存实现高效I/O的RandomAccessFile类2、Java中Stream和Memory-mapped File的I/O性... 阅读全文
posted @ 2015-10-13 16:26 duanxz 阅读(3558) 评论(0) 推荐(0) 编辑
Java读写大文本文件(2GB以上)
摘要:如下的程序,将一个行数为fileLines的文本文件平均分为splitNum个小文本文件,其中换行符'r'是linux上的,windows的java换行符是'\r\n':package kddcup2012.task2.FileSystem; import java.io.BufferedIn... 阅读全文
posted @ 2015-10-13 15:17 duanxz 阅读(54422) 评论(0) 推荐(3) 编辑
Java中的10颗语法糖
摘要:语法糖(Syntactic Sugar):也称糖衣语法,指在计算机语言中添加的某种语法,这种语法对语言的功能没有影响,但是更方便程序员使用。通常来说,使用语法糖能够增加程序的可读性,减少程序代码出错的机会。 相对于C#及许多其他JVM来说,Java在现代编译语言之中属于“低糖语言”。尤其是JDK1. 阅读全文
posted @ 2015-08-06 15:58 duanxz 阅读(8444) 评论(0) 推荐(0) 编辑
String,StringBuffer与StringBuilder的区别
摘要:String 字符串常量StringBuffer 字符串变量(线程安全)StringBuilder 字符串变量(非线程安全)简要的说, String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同... 阅读全文
posted @ 2015-07-16 14:49 duanxz 阅读(263) 评论(0) 推荐(0) 编辑
通过Java SE 7自带的监控服务(WatchService API)实现类似.NET FileWatcher的功能
摘要:Java SE 7 Tutorial中增加了一个监控目录变更情况的示例,用于介绍其新发布的WatchService API。 但对于用惯了.NET FileWatcher的用户而言,如果用于项目我认为它有两个欠缺: 1、应该提供一个独立线程后台运行机制,让这个监控过程自己在后台转,不影响前端处理 2 阅读全文
posted @ 2014-10-20 11:25 duanxz 阅读(904) 评论(0) 推荐(0) 编辑
Java 的 Tuple 元组数据类型
摘要:元组类型,即 Tuple 常在脚本语言中出现,例如 Scala 的 ("Unmi", "china@qq.com", "blahbla")。元组可认为是象数组一样的容器,它的目的是让你方便构造和引用,例如 Pair 可认为是一个只能存两个元素的元组,像是个 Map; 真正的元组应该是可以任意多个元素 阅读全文
posted @ 2014-04-04 14:03 duanxz 阅读(10307) 评论(1) 推荐(0) 编辑
thread-safe之3:SimpleDateFormat安全的时间格式化
摘要:想必大家对SimpleDateFormat并不陌生。SimpleDateFormat 是 Java 中一个非常常用的类,该类用来对日期字符串进行解析和格式化输出,但如果使用不小心会导致非常微妙和难以调试的问题,因为 DateFormat 和 SimpleDateFormat 类不都是线程安全的,在多 阅读全文
posted @ 2014-03-25 17:19 duanxz 阅读(1433) 评论(0) 推荐(0) 编辑
JVM插码之四:Java动态代理机制的对比(JDK 和CGLIB,Javassist,ASM)
摘要:一、class文件简介及加载 Java编译器编译好Java文件之后,产生.class 文件在磁盘中。这种class文件是二进制文件,内容是只有JVM虚拟机能够识别的机器码。JVM虚拟机读取字节码文件,取出二进制数据,加载到内存中,解析.class 文件内的信息,生成对应的 Class对象: clas 阅读全文
posted @ 2014-03-03 08:39 duanxz 阅读(2359) 评论(0) 推荐(1) 编辑
Java动态编程初探——Javassist
摘要:最近需要通过配置生成代码,减少重复编码和维护成本。用到了一些动态的特性,和大家分享下心得。 我们常用到的动态特性主要是反射,在运行时查找对象属性、方法,修改作用域,通过方法名称调用方法等。在线的应用不会频繁使用反射,因为反射的性能开销较大。其实还有一种和反射一样强大的特性,但是开销却很低,它就是Ja 阅读全文
posted @ 2014-02-27 12:55 duanxz 阅读(20995) 评论(0) 推荐(3) 编辑
框架Mockito
摘要:一、什么是mock测试,什么是mock对象? 先来看看下面这个示例: 从上图可以看出如果我们要对A进行测试,那么就要先把整个依赖树构建出来,也就是BCDE的实例。 一种替代方案就是使用mocks 从图中可以清晰的看出 mock对象就是在调试期间用来作为真实对象的替代品。 mock测试就是在测试过程中 阅读全文
posted @ 2014-02-12 14:52 duanxz 阅读(869) 评论(0) 推荐(0) 编辑
java代码规范学习
摘要:一、编程规约 【推荐】接口类中的方法和属性不要加任何修饰符号(public 也不要加),保持代码的简洁性,并加上有效的 Javadoc 注释。尽量不要在接口里定义变量,如果一定要定义变量,肯定是与接口方法相关,并且是整个应用的基础常量。 说明:Java的interface中,接口是比抽象类更高一层的 阅读全文
posted @ 2013-12-03 15:34 duanxz 阅读(500) 评论(0) 推荐(0) 编辑
[转]java中byte转换int时为何与0xff进行与运算
摘要:在剖析该问题前请看如下代码public static String bytes2HexString(byte[] b) {String ret = "";for (int i = 0; i < b.length; i++) { String hex = Integer.toHexString(b[ i ] & 0xFF); if (hex.length() == 1) { hex = '0' + hex; } ret += hex.toUpperCase();}return ret;}上面是将byte[]转化十六进制的字符串,注意这里b[ i 阅读全文
posted @ 2013-08-17 11:38 duanxz 阅读(454) 评论(0) 推荐(0) 编辑
怎样用java生成GUID与UUID
摘要:GUID是一个128位长的数字,一般用16进制表示。算法的核心思想是结合机器的网卡、当地时间、一个随机数来生成GUID。从理论上讲,如果一台机器每秒产生10000000个GUID,则可以保证(概率意义上)3240年不重复。UUID是1.5中新增的一个类,在java.util下,用它可以产生一个号称全球唯一的IDJava代码import java.util.UUID; public class Test { public static void main(String[] args) { UUID uuid = UUID.randomUUID(); System.out.pr... 阅读全文
posted @ 2013-07-04 12:59 duanxz 阅读(47097) 评论(0) 推荐(1) 编辑

1 2 3 下一页
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示