
java点滴
文章平均质量分 92
一叶飘舟
目标赋予我们生命的意义和目的。有了目标,我们才会把注意力集中在追求喜悦,而不是在避免痛苦上。(急需找我,加微信:jdsjlzx)
展开
-
TCP三次握手详解-深入浅出
1. 准备TCP是属于网络分层中的运输层(有的书也翻译为传输层),因为OSI分为7层,感觉太麻烦了,所以分为四层就好了,简单。分层以及每层的协议,TCP是属于运输层(有的书也翻译为传输层),如下两张图:TCP三次握手会涉及到状态转换所以这里贴出TCP的状态转换图如下:2.TCP三次握手简述要想简单了解TCP三次握手,我们首先要了解TCP头部结构,如下:TCP传递给IP层的信息单位称为报文段或段,下面都用段做单位。TCP三次握手如图:2.1 第一次握手...转载 2022-03-29 20:55:29 · 4169 阅读 · 0 评论 -
java中关于JSONObject顺序排序的问题
JSONObject put数据之后,排序会发生变化。 如下放入JSONObject中数据, JSONObjectobject=newJSONObject(); object.put("aaa",111); object.put("bbb",222); object.put("ccc",333); object.put("ddd",444);取出来的时候,可能为以下:{"aaa":111,"ddd":444,"ccc"...原创 2021-01-30 16:23:38 · 29082 阅读 · 3 评论 -
Git使用规范(Android版)
引言本文根据Git分支管理策略,结合Git Flow分支管理实践,制定了这个适合Android开发中的Git版本管理规范。同时结合实际操作演示了使用示例,希望对你有所帮助。1. 各分支简介下面分支中提到的的 version 应该替换为具体的版本,name 应该替换为具体的开发人员姓名,content 应该替换为需要优化的地方。master分支git的默认分⽀,主分支,不...转载 2019-08-22 14:55:16 · 3210 阅读 · 7 评论 -
最精简的java 线程池与任务队列
import java.util.*;public class WorkQueue { private final int nThreads;// 线程池的大小 private final PoolWorker[] threads;// 用数组实现线程池 private final LinkedList queue;// 任务队列 public WorkQueue(int nThre转载 2013-06-14 16:16:50 · 10436 阅读 · 2 评论 -
ExecutorService对象的shutdown()和shutdownNow()的区别
可以关闭 ExecutorService,这将导致其拒绝新任务。提供两个方法来关闭 ExecutorService。shutdown() 方法在终止前允许执行以前提交的任务,而 shutdownNow() 方法阻止等待任务启动并试图停止当前正在执行的任务。在终止时,执行程序没有任务在执行,也没有任务在等待执行,并且无法提交新任务。应该关闭未使用的 ExecutorService 以允许回收其资源。转载 2013-06-12 14:35:33 · 25425 阅读 · 2 评论 -
InputStream中read()与read(byte[] b)
http://blog.youkuaiyun.com/snihcel/article/details/7893097read()与read(byte[] b)这两个方法在抽象类InputStream中前者是作为抽象方法存在的,后者不是,JDK API中是这样描述两者的: 1:read() : 从输入流中读取数据的下一个字节,返回0到255范围内的int字节值。如果因为已经到达流末尾而没有可用的转载 2013-05-02 14:11:48 · 18487 阅读 · 0 评论 -
Java 完美判断中文字符
http://www.micmiu.com/lang/java/java-check-chinese/Java判断一个字符串是否有中文一般情况是利用Unicode编码(CJK统一汉字的编码区间:0x4e00–0x9fbb)的正则来做判断,但是其实这个区间来判断中文不是非常精确,因为有些中文的标点符号比如:,。等等是不能识别的。以下是比较完善的判断方法:CharUtil.java转载 2013-04-22 11:07:02 · 1593 阅读 · 0 评论 -
DatagramSocket.receive()方法无响应的解决
之前看网上说用发送命令行的方式获取客户端的mac地址,具体方法不复述了。其中用到这个receive()方法,朋友在测试的时候发现会无响应,发现是window的系统防火墙开启以后出现的。无法保证每个用户都是关闭系统防火墙的,所以看了一下api,发现一个解决方法。直接贴代码看吧[java] view plaincopyprint?转载 2013-04-26 14:06:57 · 13878 阅读 · 0 评论 -
Java中获取前一天和后一天时间
http://blog.youkuaiyun.com/jiangwei0910410003/article/details/18978441今天在开发项目的时候遇到一个问题就是怎么获取当前时间的前一天和后一天,这个实现的逻辑并不复杂,自己要写的话的也不是难事,但是貌似感觉没必要自己写这样的方法,想想Java中的Calendar类应该有这样的方法,所以上网查了相关的资料,有两个方法:分别是s转载 2014-02-08 10:55:37 · 9915 阅读 · 0 评论 -
Java 设计模式 接口型模式 之 类型介绍 (一)
接口型模式组成 : 该模式包括适配器(Adapter)模式,外观(Facade)模式,合成(Composite)模式,桥接(Bridge)模式 四种模式;类的接口 : -- 前置条件 : 接口A, 类B, 类B实现接口A; -- 允许访问 : 类A允许其它类的对象可以访问类B的 方法 与 字段, 类A 是类B的接口; -- 实现关系 : 类B 方法需要实转载 2014-03-04 14:04:24 · 2431 阅读 · 1 评论 -
Android 开发 之 JNI入门 - NDK从入门到精通
NDK项目源码地址 : -- 第一个JNI示例程序下载 : GitHub - https://github.com/han1202012/NDKHelloworld.git -- Java传递参数给C语言实例程序 : GitHub - https://github.com/han1202012/NDKParameterPassing.git --C语言回调Java方法示例程转载 2014-03-04 14:08:11 · 2506 阅读 · 0 评论 -
TextView图文混排图片被截断的问题以及Android省略号只有一个点的问题
TextView中实现图文混排主要采用的是SpannableStringBuilder、ImageSpan、正则表达式协同完成,具体的实现,自己去百度吧。今天主要想说的是在图文混排的时候,如果TextView设置了最大长度并且textView.setEllipsize(TruncateAt.END);,由于ImageSpan的作用,这时TextView的Ellipsize自动截断功能失效,...转载 2019-05-09 15:07:35 · 2544 阅读 · 2 评论 -
Java的接口
定义Java接口(Interface),是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。接口的特点Java接口中的成员变量默认都是public,static,final类型的(都可省略),必须被显示初始化,即接口中的成员变量为常量(大写,单词之间用”_”分隔);Java接口中的方法默原创 2016-07-20 23:39:28 · 4378 阅读 · 1 评论 -
java实现图片和字符串互相转换的代码
java实现图片和字符串互相转换的代码,也就是说java 转换图片为字符串,将字符串转换成图片显示,具体如下:java 转换图片为字符串,网页代理将字符串转换成图片显示,nod32 用户名和密码该方法只适用于比较小的图片传输,50K以内:try{ // 将图片转换成字符串 File imgFile = new File("f:\\Vi转载 2011-12-10 00:57:55 · 10031 阅读 · 2 评论 -
XML编程
先看一个book.xml文件:javaweb开发张孝祥69.0元java开发张孝祥69.0元package cn.itcast.dom4j;import java.io.FileOutputStream;import java.io.OutputStreamWriter;import java.io.Writer;import java.util.List;import org.dom4j.Docume原创 2011-02-22 00:42:00 · 1205 阅读 · 1 评论 -
java中Double类型的运算精度丢失的问题 (小数点多出99999999999999)
在使用Java,double 进行运算时,经常出现精度丢失的问题,总是在一个正确的结果左右偏0.0000**1。 特别在实际项目中,通过一个公式校验该值是否大于0,如果大于0我们会做一件事情,小于0我们又处理其他事情。 这样的情况通过double计算出来的结果去和0比较大小,尤其是有小数点的时候,经常会因为精度丢失而导致程序处理流程出错。 BigDecimal在《Effecti转载 2015-08-25 16:12:30 · 35396 阅读 · 1 评论 -
java 可重启线程及线程池类的设计
http://blog.youkuaiyun.com/chenqiu1024/article/details/2829827了解JAVA多线程编程的人都知道,要产生一个线程有两种方法,一是类直接继承Thread类并实现其run()方法;二是类实现Runnable接口并实现其run()方法,然后新建一个以该类为构造方法参数的Thread,类似于如下形式: Thread t=new Thread(转载 2013-06-12 14:45:23 · 7617 阅读 · 0 评论 -
java多态性Overload和Override的区别
java中的继承,方法覆盖(重写)override与方法的重载overload的区别 方法的重写(Overriding)和重载(Overloading)是Java多态性的不同表现。 重写(Overriding)是父类与子类之间多态性的一种表现,而重载(Overloading)是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Over转载 2015-02-03 18:32:56 · 2000 阅读 · 0 评论 -
Java 设计模式 接口型模式 之 适配器Adapter模式 (二)
适配器模式的意图 : 使用不同接口的类所提供的服务为客户端提供其所希望的接口;-- 问题解决场景 : 在 类A 中实现了接口中的抽象方法, 客户端B 已经定义好了方法的调用, 但是调用的方法 与 类A 中的方法名不同, 这时我们就需要适配器模式了;-- eg : 类A 实现了接口A1, 类B 实现了接口B1, 这里C调用 A 和 B 希望 A 和 B 能提供相同方法的接口, 这时我转载 2014-03-04 14:05:31 · 5536 阅读 · 0 评论 -
java 六种异常处理的陋习
http://www.blogjava.net/freeman1984/archive/2007/09/27/148850.html转载 2013-03-20 13:39:06 · 1248 阅读 · 0 评论 -
The type javax.http.HttpServletRequest cannot be resolved.It is indirectly
错误:The type javax.http.HttpServletRequest cannot be resolved.It is indirectly....原因:项目中缺少servlet-api.jar文件。解决办法:将D:/Program Files/Apache Software Foundation/Tomcat 5.5/common/lib下的servlet-api.转载 2013-03-01 10:49:43 · 1245 阅读 · 0 评论 -
RandomAccessFile类实现随机读写文件
java.io.RandomAccessFile类能够实现对文件内的随机位置进行读写操作。通过下面的一个实例来进行了解。实例:public class RandomAccessFileDemo03 {public static void main(String[] args) throws IOException{File f1=new File("e:"+File.separ原创 2011-12-10 14:44:28 · 2673 阅读 · 0 评论 -
JDK5中的线程池
JDK5中的一个亮点就是将Doug Lea的并发库引入到Java标准库中。Doug Lea确实是一个牛人,能教书,能出书,能编码,不过这在国外还是比较普遍的,而国内的教授们就相差太远了。一般的服务器都需要线程池,比如Web、FTP等服务器,不过它们一般都自己实现了线程池,比如以前介绍过的Tomcat、Resin和Jetty等,现在有了JDK5,我们就没有必要重复造车轮了,直接使用就可以,何况使原创 2011-11-29 14:44:13 · 1408 阅读 · 0 评论 -
JDK6.0的新特性:轻量级HttpServer
JDK6提供了一个简单的Http Server API,据此我们可以构建自己的嵌入式Http Server,它支持Http和Https协议,提供了HTTP1.1的部分实现,没有被实现的那部分可以通过扩展已有的Http Server API来实现,程序员必须自己实现HttpHandler接口,HttpServer会调用HttpHandler实现类的回调方法来处理客户端请求,在这里,我们把一个Http原创 2011-11-27 22:48:30 · 1269 阅读 · 0 评论 -
使用StreamTokenizer统计文件的字符数
关键技术:类java.io.StreamTokenizer可以获取输入流并将其分析为Token(标记)。StreamTokenizer的nextToken方法将读取下一个标记默认情况下,StreamTokenizer认为下列内容是Token:字母、数字、除C和C++注释符号以外的其他符号。如符号“/”不是Token,注释后的内容也不是,而“\”是Token。单引号和双引号以及其中的内容原创 2011-11-27 11:29:34 · 1659 阅读 · 0 评论 -
Java递归搜索指定文件夹下的匹配文件
package com.lzx.file;import java.io.File;import java.util.ArrayList;import java.util.LinkedList;import java.util.List;public class FileDemo07 { public static void main(String[] args)原创 2011-11-20 16:52:32 · 13358 阅读 · 2 评论 -
ThreadPoolExecutor使用和思考(上)-线程池大小设置与BlockingQueue的三种实现区别
前记: jdk官方文档(javadoc)是学习的最好,最权威的参考。文章分上中下。上篇中主要介绍ThreadPoolExecutor接受任务相关的两方面入参的意义和区别,池大小参数corePoolSize和maximumPoolSize,BlockingQ原创 2011-09-14 15:52:50 · 3533 阅读 · 0 评论 -
不要一辈子靠技术生存
对那些初学JAVA/DOT。NET PHP 等等....技术的朋友说点心里话,希望你们能从我们的体会中,多少受点启发(也许我说的不好,你不赞同但看在我真心的份上别扔砖头啊). 一。 在中国你千万不要因为学习技术就可以换来稳定的生活和高的薪水待遇,你千万更不要认为哪些从事原创 2011-08-04 15:35:09 · 2803 阅读 · 6 评论 -
中文转换成Unicode编码和Unicode编码转换成中文,Java代码实现
import java.util.Properties; public class Test { public static void main(String[] args) { String s = "简介"; String tt = gbEncoding(s); // String tt1 = "你好原创 2011-12-10 01:01:56 · 17837 阅读 · 0 评论 -
Java 简单Socket聊天系统模型(二)
package com.lzx.socket;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.ServerSocket;import java.net.S原创 2011-12-20 16:26:24 · 1127 阅读 · 0 评论 -
Java 简单Socket聊天系统模型(一)
看过马士兵的教程中有关socket聊天室的视频,我照着敲了一遍代码并不能实现视频中的效果。于是就自己写了一个,总算可以了。不知道有没有更好的方法! package com.lzx.socket;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;i原创 2011-12-20 16:22:01 · 1523 阅读 · 0 评论 -
java 如何让一组数每隔几秒变颜色一个
import java.awt.BorderLayout;import java.awt.Color;import java.awt.Font;import java.awt.Graphics;import java.util.Date;import java.util.Timer;import java.util.TimerTask;import javax.swing.JFra转载 2012-11-28 22:32:32 · 3111 阅读 · 0 评论 -
java全角字符转换为半角 半角转全角
/// /// 判断字符是否英文半角字符或标点 /// /// /// 32 空格 /// 33-47 标点 /// 48-57 0~9 /// 58-64 标点 /// 65-90 A~Z /// 91-96 标点 /// 97-122 a~z /// 123-转载 2012-05-30 10:20:15 · 10309 阅读 · 0 评论 -
WeakReference与SoftReference
WeakReference与SoftReference都可以用来保存对象的实例引用,这两个类与垃圾回收有关。WeakReference是弱引用,其中保存的对象实例可以被GC回收掉。这个类通常用于在某处保存对象引用,而又不干扰该对象被GC回收,通常用于Debug、内存监视工具等程序中。因为这类程序一般要求即要观察到对象,又不能影响该对象正常的GC过程。最近在JDK的Pro原创 2012-05-04 15:42:29 · 1396 阅读 · 0 评论 -
提高Java反射速度的方法以及对setAccessable的误解
mercyblitz 写道ouchxp 写道再就是在执行反射之前执行field.setAccessible(true); 也可以提高JDK反射效率这样可以提高效率?这个方法仅仅设置访问标识,让不能访问的成员可以访问。keating 写道ouchxp 写道再就是在执行反射之前执行field.setAccessible(true); 也可原创 2012-04-23 10:05:08 · 4163 阅读 · 0 评论 -
java socket 客户端和服务器端互相通信(聊天)
客户端:package com.lzx.socket;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.Socket;public class SocketCl原创 2012-02-20 09:29:37 · 6040 阅读 · 0 评论 -
Java 多线程的Thread类和Runnable接口
Thread 类 Thread 类是一个具体的类,即不是抽象类,该类封装了线程的行为。要创建一个线程,程序员必须创建一个从 Thread 类导出的新类。程序员必须覆盖 Thread 的 run() 函数来完成有用的工作。用户并不直接调用此函数;而是必须调用 Thread原创 2011-08-01 12:03:12 · 1106 阅读 · 0 评论