java
文章平均质量分 92
请问您哪位
主攻android, unix-c(包括嵌入式)和软件架构(还没有渐入佳境), 过去从事过java和c/c++相关的工作, 对bash, python, groovy, javascript都有基本的使用
展开
-
一枚端同学的自白(纲领篇)
动机“make it work, make it right, make it fast”。此篇文章题目叫自白,这样可以不限于某个话题,写的比较松散些,但是可以肯定的是,通篇关乎right! 不仅如此,鉴于自己的工作背景,此文仅对面向对象浓墨重彩。首先上面这句名言来自Kent Beck,主要说的是开发的三个顺序阶段。但我这里举个一个不太严谨的对比:如果说work代表着产品的基本效用,核心......原创 2020-02-12 11:07:50 · 1323 阅读 · 0 评论 -
IOC控制反转的粗浅理解
有个类C通过属性依赖了A, 要提供A的接口做些事, 传统做法是在C里做A a = new B(); (假设B是A的细化实现),一般来说可以认为C所在模块和B所在模块并不在一处,A可能在C模块或者更底层的模块。这里有两件事,一个是new的动作由C来控制,另一个是A的具体哪个实现类(这里是B)由C来控制。反转以后,Spring控制了第一个,到底是每次创建一个新的A的实例,还是从缓存池中获取A的实...原创 2019-03-21 11:45:25 · 177 阅读 · 0 评论 -
不要在构造方法中调用可覆写的方法
如题,这句话来自于《Java解惑》(《Effective java》同一作者)。在步入正题前我们先来看看kotlin的两个特性: - kotlin没有引入受检查的异常,设计这个特性一般认为是思考了Bruce Eckel的《Java是否需要受检的异常?》,以及Anders Hejlsberg的观点。 - kotlin创建的类默认不可继承,设计这个特性一般认为是思考了《Effective ja...原创 2018-07-22 13:45:26 · 1399 阅读 · 0 评论 -
visitor-acceptor访问者设计模式笔记
这种模式产生的原因是主要解决:稳定的数据结构和易变的操作耦合问题。在Java中, 一个鲜明的例子: 大家都知道, Collection好象是个黑色大染缸, 本来有各种鲜明类型特征的对象一旦放入后, 再取出时, 这些类型信息就消失了(仅仅知道父类型而无法确定具体的子类型). 那么我们势必要用If-Else或Switch这种提交结合instanceof来判断.原创 2016-12-23 17:36:06 · 615 阅读 · 0 评论 -
两个有序单链表合并成一个有序单链表的java实现
两个有序单链表合并成一个有序单链表的java实现 -- 仅作为备注, 便于自己回顾.原创 2016-10-20 20:01:30 · 4262 阅读 · 0 评论 -
简单的gson对boolean转换的test(作为备注)
GsonBooleanTest.javapackage com.test;import java.io.IOException;import com.google.gson.Gson;import com.google.gson.GsonBuilder;import com.google.gson.JsonSyntaxException;import com.google.gson.TypeA原创 2016-08-19 19:42:38 · 1974 阅读 · 0 评论 -
ZipFile v.s. ZipInputStream in java.util.zip
ZipInputStream读出ZIP文件序列(简单地说就是读出这个ZIP文件压缩了多少文件),而类ZipFile使用内嵌的随机文件访问机制读出其中的文件内容,所以不必顺序的读出ZIP压缩文件序列。原创 2016-05-07 22:28:13 · 2200 阅读 · 0 评论 -
新奇的@SafeVarargs注解
从java6到java7, 在java.lang这样一个核心package中, 增加且仅增加了一个新注解@SafeVarargs原创 2016-04-16 09:37:20 · 4696 阅读 · 0 评论 -
对象池的优劣
对象池的优点: 复用池中对象, 没有分配内存和创建堆中对象的开销, 没有释放内存和销毁堆中对象的开销, 进而减少垃圾收集器的负担, 避免内存抖动; 不必重复初始化对象状态, 对于比较耗时的constructor和finalize来说非常合适;对象池的缺点: (1)现在Java的对象分配操作不比c语言的malloc调用慢, 对于轻中量级的对象, 分配/释放对象的开销可以忽略不计;原创 2016-03-08 12:38:43 · 12782 阅读 · 0 评论 -
Java遍历文件树的实现和测试
各种遍历文件树的java代码, 包括深度优先和广度优先, 以及速度测试原创 2016-03-01 20:57:33 · 1313 阅读 · 0 评论 -
快排中partition函数-java
快排中partition函数非常有用, 其两种实现很难在java这种有jvm干预的情况下测出哪个更优秀, 不知道是不是测试手段比较low? 总的来说, partition2交换的次数少一下. 对算法的理解也没到化入骨髓的地步, 先备注一下. 要是有大神指点就好了.package com.test;import java.util.Random;public class PartitionHolder原创 2015-05-07 15:30:20 · 2653 阅读 · 0 评论 -
字符串全排列与全组合的递归实现-Java版
排列组合算法用途广泛, 需要掌握, 为降低门槛, 本文主要关注算法的逻辑和简易性, 未重视算法效率. 结合网络书本上的实现和自己的需求, 这里列有四个目标: 1. 所有元素的全排列: ab的全排列是ab, ba(顺序相关); 2. 所有元素的全组合: ab的全组合是a, b, ab(顺序无关); 3. 求n个元素中选取m个元素的组合方式有哪些: abc中选2个元素的组合是ab, ac, bc;原创 2015-05-10 22:42:46 · 8983 阅读 · 3 评论 -
Java字符串按照字节截取
这是一道常见的Java面试题, 很多人都遇到过, 这里涉及的知识点还挺多, 网上的论断和实现也很多, 我这不过是一家之言, 有相同的地方, 有不同的地方. 本想全面摘录各家之言做总结, 鉴于节约各方时间, 仅仅列述了本人所领受和有价值的部分.主要的知识点备注: 因为ASCII代表了通用英文字符集, 在互联网背景下, 为了统一世界各国各种字符集, 流行开了Unicode字符集, 显然Java也原生原创 2015-05-10 10:35:33 · 7349 阅读 · 0 评论 -
org.json与fastjson与gson的倾向于解析速度的性能测试
这篇文章是我2015-02-08写的 Android为啥使用org.json而不用gson, 如何更好的测试和对比这两个东西, 哪个大神能告诉我小萌头? 那篇文章的续篇.首先, 要PK的这三个都是json解析与生成的类库. 上次那篇文章可能写的太初级或有主观情绪在里面, 导致没有人愿意帮我做出更好的指导. 我这次学了一点点专业级性能测试的皮毛, 打算做客观的基准测试. 每一种基准测试都必须严格做出原创 2015-04-06 21:26:47 · 2986 阅读 · 0 评论 -
锤炼"单例"
此篇文章不断更新中, 包括根据java发展, 网络资源, 博客评论直接做修改, 以便其他读者不用去扒各地资源, 因为柔和了思想, 纷杂的片段, 无法一个个注明参考处, 请不要惊讶或气愤, 由衷感谢相关博客和评论. 单例是设计模式的一种, 从语义上来说就是一个应用内或者一个进程内或者一个系统内, 某个类有且只有一个实例或对象给外部使用, 比如代表文件系统的对象, 全局配置管理器的对象应该保证只有一个,原创 2015-05-09 17:33:00 · 790 阅读 · 0 评论 -
JDK9初体会心得
JDK9的新特性1. 轻量级的JSON API ;2. HTTP 2 Client API ( 支持 HTTP 2.0 和 WebSockets , 替代传统的 HttpURLConnection ) ;3. Process API 更新 , 以提升对操作系统进程的控制和管理 ;4. Improve contended locking , 提升访问对象时的线程竞争处理 ;5原创 2015-03-01 10:24:15 · 1679 阅读 · 0 评论